主题中讨论的其他器件:CC3235SF
您好!
使用 HttpClient_sendRequest ()发送 POST 请求时出现404错误 。 我理解、如果我发送的正文或标题的格式有任何错误、就会发生这种情况。 我已经通过使用 postman 软件检查了网址,正文和标题,并与相同的信息,我得到200 OK 响应在 Postman。
我想检查是否正在设置正文和标题的格式以正确的方式使用 HttpClient_sendRequest() API。
这是我正在使用的代码片段(为了保护隐私、实际的正文内容已更改、但格式相同)
httpClientHandle = HTTPClient_create(&statusCode,0);
if(statusCode < 0)
{
UART_PRINT("httpTask: creation of http client handle failed %d", statusCode);
}
const char contentType[] = "application/json";
ret = HTTPClient_setHeader(httpClientHandle, HTTPClient_HFIELD_REQ_CONTENT_TYPE,
contentType, strlen(contentType), HTTPClient_HFIELD_PERSISTENT);
if(ret < 0){
UART_PRINT("httpTask: setting content header failed %d", ret);
}
//HTTP Client connect to host
ret = HTTPClient_connect(httpClientHandle,"">https://baseurl.com",0,0);
if(ret < 0)
{
UART_PRINT("httpTask: connect failed %d", ret);
}
// Send POST request
const char body[] = "{\n\"param1\":\"xxxxx\",\n \"param2\":\"xx yyy xx\"\n}";
UART_PRINT("%s",body);
ret = HTTPClient_sendRequest(httpClientHandle,HTTP_METHOD_POST,"/endpointUrl/Url",body,strlen(body),0);
if(ret < 0)
{
UART_PRINT("httpTask: send failed %d", ret);
}
if(ret != HTTP_SC_OK)
{
UART_PRINT("httpTask: cannot get status %d", ret);
}
请通过查找我在上述代码中所做的错误来帮助您在格式方面导致400个错误或缺少一些重要方面。
非常感谢您的帮助!!
