如何从nsis中的nsJSON插件获取HttpWebResponse内容/数据和状态代码

时间:2019-01-25 14:40:52

标签: nsis httpwebresponse

我是使用nsJSON插件进行HTTP发布的nsis脚本。此处,在httpwebresponse中,获取状态代码为200,但内容显示为空。 当我在邮递员中验证示例API时,内容和状态代码越来越完美。

我已经验证了以下nsis脚本,但输出如下:

{
  "Output": {   
},
"StatusCode": 200
}

但是实际上,存在一些状态码为200的JSON响应数据。

 nsJSON::Set /tree HttpWebRequest /value `{ "Url": "api\url", "Async": true, "Verb": "POST", "DataType": "JSON", "Headers": "Content-Type: application/json" }`
 nsJSON::Set /tree HttpWebRequest Data /value `{"a": "a1", "b": "b1", "c": "c1", "osPlatform": "Windows"}`
 nsJSON::Serialize /tree HttpWebRequest /format /file C:\output2.json
 nsJSON::Set /tree AsyncHttpWebResponse /http HttpWebRequest /value `{"Verb": "POST", "DataType": "JSON", "Headers": "Content-Type: application/json" }`

 ${Do}
 Sleep 1000
 nsJSON::Wait HttpWebRequest /timeout 0
 Pop $R0
 ${If} $R0 != wait
   ${Break}
 ${EndIf}
 MessageBox MB_OK|MB_ICONSTOP `Waiting... $R0`
${Loop}
MessageBox MB_OK|MB_ICONSTOP `Finished......`
nsJSON::Serialize /tree AsyncHttpWebResponse /format /file C:\output3.json

我希望输出应包含JSON数据和状态码为200。

0 个答案:

没有答案