簡體   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