有没有办法在 Javascript 中完成这个 cURL 请求?
curl -X POST https://api.mongohq.com/databases/vehicles/collections/rockets/documents?_apikey=12345 \
-H "Content-Type: application/json" \
-d '{"document" : {"_id" : "bottle", "pilot_name" : "Elton John"}, "safe" : true }'
下面的代码与我所能得到的一样接近,但它返回 {"error":"Failed to create mongohq::api::document"}。
function postsBeaconMessage (postTo, beaconMessage , targetFrame) {
var beacon = document.createElement("form");
beacon.method="POST";
beacon.action = postTo;
//beacon.target = targetFrame;
var message = document.createElement("input") ;
message.setAttribute("type", "hidden") ;
message.setAttribute("name", "document") ;
message.setAttribute("value", beaconMessage);
beacon.appendChild(message) ;
beacon.submit();
}
执行此操作时出现 500 错误,但 cURL 工作正常。我认为这是设置内容类型的问题。有没有办法在表单或帖子对象中设置内容类型?似乎 mongohq 需要明确的内容类型声明。
我无权更改服务器上的同源策略,而且我很确定我将无法执行 PHP。
任何想法都会有所帮助。我死在这水里了。