[英]execute python script from javascript
我是python的新手。 我正在開發Web應用程序,並嘗試從js腳本調用python腳本。 我正在使用ajax來按如下方式調用.py腳本,但我一直在獲取響應中返回的代碼。 為簡單起見,我減少了python腳本中的計算-甚至變量x都沒有返回到js文件中。
在js函數中
return $.ajax({
type: 'GET',
url: 'test.py',
success: function(response) {
console.log(response);
},
error: function(response) {
return console.error(response);
}
});
test.py
#!/usr/bin/python
print("Hello World")
x = 2
return x
該請求成功,因為它在成功內部移動。 響應是python代碼而不是2。感謝您的幫助!
您必須使用所謂的應用程序服務器來使用Python服務HTTP請求。 看這一個或嘗試使用一些輕量級的Web框架,比如瓶 。
Flask中最簡單的Web應用程序將如下所示(例如,將其放入app.py
文件中):
from flask import Flask
app = Flask(__name__)
@app.route("/test.py") # consider to use more elegant URL in your JS
def get_x():
x = 2
return x
if __name__ == "__main__":
# here is starting of the development HTTP server
app.run()
然后,您必須通過執行以下操作來啟動服務器:
python app.py
默認情況下,它將從localhost:3000
開始。 因此,您必須將JS代碼中的url
更改為http://localhost:3000/test.py
UPD:還請注意,列出的Web服務器尚未投入生產。 要構建可用於生產環境的配置,您可以使用uWSGI + nginx綁定之類的東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.