繁体   English   中英

Firebase功能和Autodesk Forge集成

[英]Firebase Functions and Autodesk Forge integration

我在Firebase Functions中获取Autodesk Forge令牌的获取请求时遇到问题。

这是函数注册中显示的错误:

FetchError:对https://developer.api.autodesk.com/authentication/v1/authenticate的请求失败,

reason: getaddrinfo EAI_AGAIN developer.api.autodesk.com:443
    at ClientRequest.<anonymous> (/srv/node_modules/node-fetch/lib/index.js:1455:11)
    at emitOne (events.js:116:13)
    at ClientRequest.emit (events.js:211:7)
    at TLSSocket.socketErrorListener (_http_client.js:401:9)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:66:8)
    at _combinedTickCallback (internal/process/next_tick.js:139:11)
    at process._tickDomainCallback (internal/process/next_tick.js:219:9)

我已经尝试过在我的react js项目中插入Forge API,并弄清楚这将是一个CORS问题。

  const snapshot = change.after;
  console.log(snapshot)
  const api = "https://developer.api.autodesk.com/authentication/v1/authenticate"

  const search = () =>
    fetch(`${api}`, {
      method: 'POST',
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
      },
      body: JSON.stringify(`client_id=${process.env.REACT_APP_FORGE_CLIENT_ID}&client_secret=${process.env.REACT_APP_FORGE_CLIENT_SECRET}&grant_type=client_credentials&scope=data:read`)
    }).then(res => res.json())

  search().then((res) => {
    const data = res
    return snapshot.ref.parent.child('token').set(data);
  })
})

由于Firebase Functions在GCD后端中运行,CORS并没有真正发挥作用。

您必须采用免费计划getaddrinfo EAI_AGAIN表示DNS查找超时,并且是由于免费层的限制,其中出站网络仅限于Google服务。 将您的计划升级到Flame或Blaze

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM