目前我正在使用cakePHP中的http发布请求进行战斗。
我使用下面的代码与需要授权的外部API进行通信。
问题是,只要我使用JSON上下文添加正文,整个应用程序就会挂起。它会在浏览器中永久加载,而不会返回任何结果。必须停止并启动Apache才能恢复正常。在不同的机器上测试,效果相同。
如果我没有发送(JSON)主体,我显然会收到500服务器错误,但是它告诉我授权正在运行,否则我会得到未经授权的。
如果我做了一个" GET"请求相同的API,它工作正常并返回结果。
JSON语法是干净的,如果我使用API测试程序处理变量和其他信息它(https://apigee.com/console)。
更新:如果请求有效,它可以正常工作。但是,在API测试仪上,它给了我一个" 400 Bad Request"。我需要在我的应用程序中处理它,但在这种情况下,上述情况正在发生。期望是它会返回错误。
$options = array(
'body' => $json_order,
'header' => array(
'Authorization' =>'123456',
'Content-Type' => 'application/json; charset=utf-8',
),
);
$result=$HttpSocket->post('https://<address>',null,$options);
debug($HttpSocket->request);
如果我以其他方式这样做,效果相同
$options = array(
'header' => array(
'Authorization' =>'123456',
'Content-Type' => 'application/json; charset=utf-8',
),
);
$result=$HttpSocket->post('https://<address>',$json_order,$options);
debug($HttpSocket->request);
任何帮助都会受到赞赏!
答案 0 :(得分:0)
要清除它:问题是远端没有正确响应错误代码。 =