Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json GAS Wialon本地远程API:检索登录数据_Json_Google Apps Script_Remoteapi - Fatal编程技术网

Json GAS Wialon本地远程API:检索登录数据

Json GAS Wialon本地远程API:检索登录数据,json,google-apps-script,remoteapi,Json,Google Apps Script,Remoteapi,你好 我有一个Wialon本地服务器(GPS监控系统),并计划使用时间驱动的可安装触发器更新共享的Google工作表 根据,在浏览器中输入API调用时,我能够获得所需的响应 然而,在GAS中,当试图从响应中检索数据时,我得到以下错误 API调用: let apiURL = `http://my.tracking.site.come/wialon/ajax.html?svc=token/login&params={"token":"5dce19710a5e

你好

我有一个Wialon本地服务器(GPS监控系统),并计划使用时间驱动的可安装触发器更新共享的Google工作表

根据,在浏览器中输入API调用时,我能够获得所需的响应

然而,在GAS中,当试图从响应中检索数据时,我得到以下错误

API调用:

  let apiURL = `http://my.tracking.site.come/wialon/ajax.html?svc=token/login&params={"token":"5dce19710a5e26ab8b7b898XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXFCEED7DC03BC48FF5F8"}`
  console.log(apiURL) // This URL works in a web browser as expected
  var resText = UrlFetchApp.fetch(apiURL).getContentText() // error is raised on this line
  console.log(resText)
错误:

11:48:27 AM Error   
Exception: Invalid argument: http://my.tracking.site.come/wialon/ajax.html?svc=token/login&params={"token":"5dce19710a5e26ab8b7b898XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXFCEED7DC03BC48FF5F8"}
wialonLogin @ wialon.gs:20
请告知我在这里做错了什么,因为我对GAS和Wialon远程API都没有什么经验。。。我们将非常感谢您的帮助


谢谢。

解决方案是对URL进行编码

let apiURL = `http://my.tracking.site.come/wialon/ajax.html?svc=token/login&params={"token":"5dce19710a5e26ab8b7b898XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXFCEED7DC03BC48FF5F8"}`
  console.log(apiURL) // This URL works in a web browser as expected
  var urlEncoded = encodeURI(apiURL);
  var resText = UrlFetchApp.fetch(urlEncoded).getContentText() // error is raised on this line
  console.log(resText)

解决方案是对URL进行编码

let apiURL = `http://my.tracking.site.come/wialon/ajax.html?svc=token/login&params={"token":"5dce19710a5e26ab8b7b898XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXFCEED7DC03BC48FF5F8"}`
  console.log(apiURL) // This URL works in a web browser as expected
  var urlEncoded = encodeURI(apiURL);
  var resText = UrlFetchApp.fetch(urlEncoded).getContentText() // error is raised on this line
  console.log(resText)

尽管很遗憾,我无法打开
https://sdk.wialon.com/wiki/en/local/remoteapi2004/codesamples/login
,在您的情况下,作为一个简单的修改,如何将URL编码为
令牌/login
{“令牌”:“5DCE19710A5E26AB8B7B898XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXFCEED7DC03BC48FF5F8”}
?但我不确定这是否是你问题的直接解决方案。对此我深表歉意。感谢Tanaike的回复,我刚才在这里看到了一个类似的问题:我可以确认添加var urlEncoded=encodeURI(apirl)是有效的。我得到了想要的回应。很抱歉问你这个问题…谢谢你的回答。我很高兴您的问题得到了解决。不过,不幸的是,我无法打开
https://sdk.wialon.com/wiki/en/local/remoteapi2004/codesamples/login
,在您的情况下,作为一个简单的修改,如何将URL编码为
token/login
{“token”的值:“5DCE19710A5E26AB8B7B898XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXFCEED7DC03BC48FF5F8”
?但我不确定这是否是您问题的直接解决方案。对此我深表歉意。感谢Tanaike的回复,我刚才在这里看到了一个类似的问题:我可以确认添加var encoded=encodeURI(APIRL)已经成功了。我得到了想要的回复。很抱歉这个问题…谢谢你的回复。我很高兴你的问题得到了解决。