The Ably engineering team recently noticed server-side errors due to not being able to parse certain request bodies.
Upon investigation, the errors were all coming from clients sending batch publish requests using ably-php/1.1.10 with a Content-Type of application/x-msgpack but a JSON body.
For example:
POST /messages HTTP/1.1
Host: rest.ably.io
...
Accept: application/x-msgpack
Content-Length: 6977
x-ably-version: 2
ably-agent: ably-php/1.1.10 php/8.2.17
content-type: application/x-msgpack
[{"channels":"<redacted>","messages":{"name":"<redacted>","data":"<redacted>"}...
HTTP/1.1 400 Bad Request
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Link,Transfer-Encoding,Content-Length,X-Ably-ErrorCode,X-Ably-ErrorMessage,X-Ably-ServerId,X-Ably-Cluster,Server,X-Amz-Cf-Pop
Content-Length: 281
Content-Type: application/json
Date: Fri, 05 Apr 2024 13:40:58 GMT
Vary: Origin
X-Ably-Cluster: production
X-Ably-Errorcode: 40000
X-Ably-Errormessage: Unable to parse request body; err = Error: 6976 trailing bytes
X-Ably-Serverid: frontend.ba26.7.us-east-1-A.i-0214a41f6fd36a0dd.e7dpJkSyABaTE1
X-Robots-Tag: noindex
{
"error": {
"message": "Unable to parse request body; err = Error: 6976 trailing bytes",
"code": 40000,
"statusCode": 400,
"nonfatal": false,
"href": "https://help.ably.io/error/40000",
"serverId": "frontend.ba26.7.us-east-1-A.i-0214a41f6fd36a0dd.e7dpJkSyABaTE1"
}
}
It is not correct for ably-php to send a JSON body with Content-Type: application/x-msgpack.
┆Issue is synchronized with this Jira Task by Unito
The Ably engineering team recently noticed server-side errors due to not being able to parse certain request bodies.
Upon investigation, the errors were all coming from clients sending batch publish requests using
ably-php/1.1.10with aContent-Typeofapplication/x-msgpackbut a JSON body.For example:
It is not correct for ably-php to send a JSON body with
Content-Type: application/x-msgpack.┆Issue is synchronized with this Jira Task by Unito