![](/img/trans.png)
[英]How can I pass a client-side parameter to a server-side route without using forms?
[英]How to pass a parameter from client side to server in python
我正在使用flask
並且flask-restx
嘗試創建一個協議以從另一個服務獲取特定的字符串。 我想知道是否有一種方法可以將參數從另一個 function 傳遞到服務器端。 例如,這是我的服務器端:
from flask_restx import Api,fields,Resource
from flask import Flask
app = Flask(__name__)
api = Api(app)
parent = api.model('Parent', {
'name': fields.String(get_answer(a,b)),
'class': fields.String(discriminator=True)
})
@api.route('/language')
class Language(Resource):
# @api.marshal_with(data_stream_request)
@api.marshal_with(parent)
@api.response(403, "Unauthorized")
def get(self):
return {"happy": "good"}
get_answer function 在不同的文件中:
get_answer(a,b):
return a + b
我期望的是從一個文件中得到get_answer
的結果,然后生成我的API,這樣GET請求就可以拿到了。 我知道如果有一個 web 頁面,我們可以使用render_template(
或form
來獲取它。但是如果我想從另一個 function 獲取值怎么辦?我知道我們只使用app.run()
運行服務器,但是我們可以將任何值傳遞到服務器嗎?猜測app.run(a,b)
在這種情況下不應該起作用。我們肯定需要將兩個參數傳遞到服務器。或者我們可以存儲get_answer(a,b)
的答案在 main 中使用a
和b
的特定值,然后將數字傳遞到服務器端。但無論哪種方式都需要參數。
我測試過的一件事是將服務器包裝成 function。但在我們的例子中,將 class 包裝在 function 中是個好主意,因為我們有class Language(Resource):
get_answer function 在不同的文件中
然后導入並調用它
from other_file import get_answer
...
def get(self):
return {"answer": get_answer(2,2)}
正如另一個答案所示,如果您想使用自定義 arguments,請從請求 object 中解析它們
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.