簡體   English   中英

在應用程序的服務器端執行 JavaScript 客戶端編寫的代碼

[英]Executing JavaScript client written code on server side of an application

我目前正在開發一個 web 應用程序,它配備了一個基於 web 的代碼編輯器 JavaScript。這個項目的 scope 是允許用戶從應用程序的客戶端執行 JS 代碼,使用一些基於不同的服務器端變量登錄用戶(用於功能測試目的)。 客戶端應用程序運行在 React 上,服務器端運行在 NodeJS 上。 我遇到了三種不同的執行概念:

  1. 將代碼保存到.js文件中並發送到服務器執行。
  2. 將代碼保存到某種變量中並在服務器端將其轉換回原始代碼,然后執行它。
  3. 請求服務器數據然后在應用程序的客戶端執行 JS 代碼片段(看起來最安全但最不可能)。

JS代碼不需要具備導入庫或調用其他本地文件的能力,其主要目的是測試和創建基於特定變量的數學和邏輯算法。 執行此類非本機代碼有哪些好方法?

方式 1:使用 eval,例如:

axios.get('api.js', data => {
  eval(data.data);
});

方式 2:您可以將新的 JS 包裝到 function

const {randomString)Function  = () => { 
       // you code 
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM