C# Autodesk Forge尝试联机访问API时出错
我在在线服务器上加载3D模型时遇到问题,显示的错误与访问Forge API有关,本地工作正常,但是当安装到服务器上或创建网站时,会标记以下错误“加载资源失败:服务器响应状态为404(未找到)”,然后是“onDocumentLoadFailure()-错误代码:7”。 正如我所评论的,我发现奇怪的是,在当地,它是有效的。附加显示错误的代码段C# Autodesk Forge尝试联机访问API时出错,c#,jquery,xmlhttprequest,autodesk-forge,C#,Jquery,Xmlhttprequest,Autodesk Forge,我在在线服务器上加载3D模型时遇到问题,显示的错误与访问Forge API有关,本地工作正常,但是当安装到服务器上或创建网站时,会标记以下错误“加载资源失败:服务器响应状态为404(未找到)”,然后是“onDocumentLoadFailure()-错误代码:7”。 正如我所评论的,我发现奇怪的是,在当地,它是有效的。附加显示错误的代码段 function getAccessToken() { var xmlHttp = null; xmlHttp = new XMLHttpR
function getAccessToken() {
var xmlHttp = null;
xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", '/api/forge/toke', false); //Address not found
xmlHttp.send(null);
return xmlHttp.responseText;
}
非常感谢您。您确定您在本地运行的代码与您部署的代码确实相同吗
getAccessToken
函数似乎不正确,原因如下:
- 首先,URL中似乎有一个输入错误-它不应该是
而不是/api/forge/token
/api/forge/toke
- 更重要的是,HTTP请求是异步的,这意味着它不能在调用
xmlHttp.send()后立即返回响应。您可以在中找到有关
用法的更多详细信息XMLHttpRequest
- 最后,假设函数被传递到Autodesk.Viewing.Initializeroptions,它应该使用传递给它的回调参数返回令牌(如中所示)
getAccessToken
应该看起来更像这样(使用更现代的fetch
和async/await):
异步函数getAccessToken(回调){
const resp=wait fetch('/api/forge/token');
const json=await resp.json();
回调(json.access_token,json.expires_in);
}
我已经找到了问题所在。在进行部署时,我必须更改向公众发出请求的url或域名。例如:mywebsite.com/aplication name/api/forge/token。您好,非常感谢您抽出时间回答我的问题。我已经找到了问题所在。在进行部署时,我必须更改向公众发出请求的url或域名。例如:。在这个问题上,我在写作时犯了一个错误,这就是为什么它说“toke”而不是“token”。