亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Golang 中使用 Fetch in JavaScript (V8go, Otto)?

如何在 Golang 中使用 Fetch in JavaScript (V8go, Otto)?

Go
慕標5832272 2023-01-03 10:12:56
我正在嘗試在 Golang 函數內運行 JavaScript,并使用 fetch 在 Javascript 上下文中通過 API 獲取 JSON。我使用以下代碼在Otto中進行了嘗試:import "github.com/robertkrimen/otto"    vm := otto.New()    vm.Run(`    function tryfunc() {        console.log("Started");        fetch('https://www.example.com/APIendpoint');        console.log("Success");    }    tryfunc();    `)Otto 使用起來非常簡單,但看起來 Otto 是一個事件總線并且不管理 fetch。我現在正在嘗試使用以下代碼使用v8go :import v8 "rogchap.com/v8go"ctx := v8.NewContext()ctx.RunScript(`fetch("https://www.example.com/APIendpoint"), ""`)但它需要另一個論點。文檔非常不清楚,即使是最簡單的 JS 腳本也很難理解如何運行。有人可以幫忙嗎?
查看完整描述

1 回答

?
ibeautiful

TA貢獻1993條經驗 獲得超6個贊

Otto 和 v8 實現ECMAScript,從當前的 13.0 版本開始不需要內置函數fetch(請參閱:https ://262.ecma-international.org/13.0/#sec-function-properties-of-the-global-object ) ,此功能由網絡瀏覽器實現。

我相信第二個參數只是調試輸出前綴的文件名(例如:foo.js:14: undefined bar),這在解釋器中很常見。

我懷疑你的腳本確實運行了,如果你打印出RunScript的輸出(你忽略了兩個返回值,一個 JavaScript 值和一個錯誤),那應該有一個“未定義的函數獲取”和 value nilfetch僅供參考,在v8go 文檔中有一個實施示例。


查看完整回答
反對 回復 2023-01-03
  • 1 回答
  • 0 關注
  • 377 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號