I am using the BG96 to access a rest-api on two different servers.
When accessing server-A the QHTTPGET succeedes, when accessing server-B (which offers the same api) the QHTTPGET fails with +QHTTPGET: 0,400,150.
When using some testing-tool like postman, the GET requests on both servers are working properly. There is just a difference in the oder of the header-items in the response. Does the order of the header items matter?
When looking into the user-manual of the BG96, the error-code 400 is not shown there.
What might be the root-cause of my problem?
err 400 means that : "bad request " or "invalid hostname "
to find the root cause ,
1.pls add SNI setting and try again
2. before your access http server , pls confirm the PDP context has been activated ,
Activate the PDP context by AT+QIACT, then the assigned IP address can be queried by
3. if you suspect that , this issue cause by http header , pls enable http header with the below cmd
AT+QHTTPCFG=“responseheader”,1 //Allow to output HTTP response header.
thank you for your reply.
In the meantime we were able to figure out that there was sent an unintended 0x00 character at the end of the url to the modem.
The one server rejected that invalid url. The other server complained about it, but accepted it anyways.
So I have a final question about the modem behavior, when it gets sent some url with invalid characters …
… does the modem software do some checking of the url? … or some replacement of invalid characters?