为了账号安全,请及时绑定邮箱和手机立即绑定

从服务器脚本获取变量到客户端脚本

从服务器脚本获取变量到客户端脚本

繁花如伊 2021-07-02 10:01:34
这是我目前正在努力解决的问题。我在一个 webapp 项目中,其中有 2 个脚本:一个被调用的脚本start.js,我在其中初始化服务器并初始化一个变量token. 这个脚本在我启动 webapp 时运行。调用的脚本viewer.js初始化查看器。该查看器需要前一个token才能工作。我无法从客户端生成令牌,因为它需要 NodeJS,据我所知 NodeJS 在客户端不起作用。我曾尝试使用全局变量、全局方法或 HTTP 请求,但到目前为止这些方法似乎都不起作用。关于如何做到这一点的任何提示?这是我尝试过的:// start.jsconst ForgeSDK = require('forge-apis');const express = require('express');const path = require('path');var app = express();app.use('/static', express.static(__dirname + '/static'));/** * Token generation */oAuth2TwoLegged.authenticate().then(function(credentials){    setToken(credentials.access_token)}, function(err){    console.error(err);});function setToken(newToken) {    console.log("Definition du nouveau token")    token = newToken;    console.log(token)};app.get('/', function(req, res) {    res.sendFile(path.join(__dirname + '/index.html')); });app.listen(3000, function () {    console.log('Token provider listening on port 3000')});// viewer.jsvar token = '';/** * Viewer initialization */
查看完整描述

1 回答

?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

您可以将回调传递给您的配置选项以获取令牌(通常通过 ajax)到请求:


var options = {

    env: 'AutodeskProduction',

    getAccessToken: function(onGetAccessToken) {

        //

        // TODO: Replace static access token string below with call to fetch new token from your backend

        // Both values are provided by Forge's Authentication (OAuth) API.

        //

        // Example Forge's Authentication (OAuth) API return value:

        // {

        //    "access_token": "<YOUR_APPLICATION_TOKEN>",

        //    "token_type": "Bearer",

        //    "expires_in": 86400

        // }

        //

        var accessToken = '<YOUR_APPLICATION_TOKEN>';

        var expireTimeSeconds = 86400;

        onGetAccessToken(accessToken, expireTimeSeconds);

    }

}


 Autodesk.Viewing.Initializer(options, function onInitialized(){

  ...

有关详细信息,请参见此处

并查看此处此处创建一个端点以在您的 Node 后端生成访问令牌。


查看完整回答
反对 回复 2021-07-08
  • 1 回答
  • 0 关注
  • 162 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信