我有一个写为ASP.NET的Web服务,当与带有JSON内容的Postman一起测试时,它可以正常工作。 JSON是作为Body is Postman发送的
当尝试使用HTTP Post在Nativescript中实现相同功能时,它将失败。
检查IIS日志时,Postman的cs方法与POST一样正确,但是我的Nativescript代码的cs方法是GET。 IIS日志条目中的示例如下:
2019-07-01 12:42:52 xxx.xxx.xxx.xxx GET /Service.asmx/SaveAnswers- 443-xxx.xxx.xxx.xxx Mozilla / 5.0 +(Macintosh; + Intel + Mac + OS + X + 10_13_6)+ AppleWebKit / 537.36 +(KHTML,+ like + Gecko)+ Brackets / 1.14.0 + Chrome / 51.0.2704.103 + Safari / 537.36 -200 0 0 62 2019-07-01 12:57:19 xxx.xxx.xxx.xxx POST /Service.asmx/SaveAnswers-443-xxx.xxx.xxx.xxx PostmanRuntime / 7.15.0- 200 0 0 359
我上传JSON文本的代码是:-
function uploadJson(jsontxt){
console.log(jsontxt);
http.request = ({
url: "https://myURL/Service.asmx/SaveAnswers",
method: "POST",
headers: {"Content-Type": "application/json"},
content: jsontxt
}).then((response) => {
// var result = response.content.toJSON();
// console.log(result);
console.log("Finished upload");
}, (e) =>{
console.log("JSON upload error: "+e);
})
}
为了安全起见,更改了日志IP地址和我的URL。我没有收到任何错误,但是不了解日志中的邮递员是POST还是我的脚本是GET