gpt4 book ai didi

javascript - 即使服务器端函数成功返回,回调函数也没有运行

转载 作者:太空宇宙 更新时间:2023-11-04 16:13:20 25 4
gpt4 key购买 nike

我正在尝试处理从服务器端返回的json响应。为此,我设置了回调函数,该函数将在服务器端成功响应时执行,并通过接受它作为参数来进一步处理服务器响应,但是它不工作。

这是我的 html 代码:

<form id="EditorsForm">
UserName:<br>
<input type="text" name="uname" id="uname">
<br> Password:
<br>
<input type="password" name="password" id="password">
<br><br>
<input type="button" value="Submit" onclick="google.script.run.withSuccessHandler(onSuccess).verifyUser(this.form)">
</form>

这是我的回调函数

function onSuccess(response) {
alert(response);
}

这是我的应用程序脚本,它返回成功的 json 响应。

  function verifyUser(EditorsForm) {    
var uname = EditorsForm.uname;
var password = EditorsForm.password;

login_api = "http://api.abcbrain.in/operations/login.php?userName=" + uname + "&password=" + password + "&referrer=ePlugin";
var resp = UrlFetchApp.fetch(login_api);
var json = resp.getContentText();
var data = JSON.parse(json);
return data;
}

最佳答案

我刚刚在 verifyUser() 函数中使用硬编码的 JSON 测试了您的代码,如下所示,

 function verifyUser(EditorsForm){

var uname=EditorsForm.uname;
var password=EditorsForm.password;

/*login_api="http://api.smsbrain.in/operations/login.php?userName="+uname+"&password="+convertSign(password)+"&referrer=excelPlugin";
"http://api.smsbrain.in/1.2/appsms/brandStatus.php?user="+uname+"& passwd="+password+"&senderId="+sid+"";
var resp=UrlFetchApp.fetch(login_api); */

var json = '{"resp1":"test"}';//resp.getContentText();
var data = JSON.parse(json);
Logger.log(data)
return data;
}

它给了我正确的结果

enter image description here

我认为问题出在 UrlFetchApp 上,它一定会抛出异常。您可以使用“try catch block ”来确保它不会抛出任何异常吗?

关于javascript - 即使服务器端函数成功返回,回调函数也没有运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41276236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com