gpt4 book ai didi

c# - getJSON 回调未触发

转载 作者:太空狗 更新时间:2023-10-29 18:04:19 26 4
gpt4 key购买 nike

我正在使用以下脚本进行调用,该脚本在单击 anchor 标记时调用

function GetToken(videoId) {
debugger;
var json = $.getJSON("/Vod/RequestAccessToken/" + videoId, function(result) {
alert("token recieved: " + result.token);
});
}

在服务器应用程序中,我收到了调用,因此我知道它是一个有效的 URL,但没有调用回调。如果我通过 jquery 代码 (f11/f10) 设置回调被调用??!!!?

服务器以类的形式从 MVC 应用程序返回结果

// function called
public JsonResult RequestAccessToken(int id)
{
Token t = new Token();
t.MasterId = Guid.NewGuid();
var result = new TokenResult(t.MasterId);
return this.Json(result, JsonRequestBehavior.AllowGet);
}

// class returned
public class TokenResult
{
public TokenResult() { }
public TokenResult(Guid g) { token = g.ToString(); }
public string token = null;
}

当我通过浏览器访问 url 结果时 =

{
"token":"c877453e-739d-4883-9310-91ddd707d6af"
}

最佳答案

如果您的结果不成功,则不会触发该回调,这通常是由于返回了无效的 JSON。要对其进行测试,您可以使用 $.getJSON 的长格式,这样您就可以看到错误:

$.ajax({
url: url,
dataType: 'json',
success: function(result){
alert("token recieved: " + result.token);
},
error: function(request, textStatus, errorThrown) {
alert(textStatus);
},
complete: function(request, textStatus) { //for additional info
alert(request.responseText);
alert(textStatus);
}
});

如果是 JSON/解析器错误,您可以获取响应并查看 JSONLint 有什么问题,此处:http://www.jsonlint.com/

关于c# - getJSON 回调未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2716468/

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