Autodesk Forge API在防火墙后无法正常工作的问题可以通过配置代理服务器来解决。下面是使用Node.js的示例代码,演示如何在Express应用程序中配置代理服务器:
const express = require('express');
const request = require('request');
const app = express();
// 设置代理服务器
const proxyUrl = 'http://proxy-server-host:port';
const proxy = request.defaults({ proxy: proxyUrl });
// 请求Forge API
app.get('/forge', (req, res) => {
const apiUrl = 'https://developer.api.autodesk.com/foo/bar';
proxy.get(apiUrl, (err, apiRes, body) => {
if (err) {
console.error(err);
res.status(500).send('Error occurred.');
} else {
res.send(JSON.parse(apiRes.body));
}
});
});
// 启动服务
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`Server listening on port ${port}!`);
});
以上示例代码中,proxyUrl变量是代理服务器的地址和端口,apiUrl变量是请求的Forge API地址。然后,使用request模块创建一个代理对象,并使用代理对象进行请求。最后,启动Express应用程序,并监听端口。
请注意,代理服务器允许通过端口访问外部网络,因此不应该将其暴露给公共网络,以避免安全漏洞。