[英]Python/Flask how to take information from url
我正在嘗試從 blockonomics 實現這個 API。 它被稱為 HTTP 回調,它將數據發送到我的 HTTP 或我給它的網站上的鏈接。 例如,我給它 website.com/api 它會發送 website.com/api?info=value&info2=value2 並且你明白了。 所以我希望能夠獲取這些數據並將其實現到我的燒瓶程序中。 他們提供的示例代碼是用 PHP 編寫的,我明白了它的要點,但我不知道如何制作這個 python。
這是它將發送的回調
/api/callback_url?status=2&addr=1C3FrYaGgUJ8R21jJcwzryQQUFCWFpwcrL&value=10000&txid=4cb3 0849ffcaf61c0e97e8351cca2a327223ceb67ace3bc6dc
這是它給我的 PHP 代碼。
<?php
$secret = 'Mabcdas122olkdd';
$txid = $_GET['txid'];
$value = $_GET['value'];
$status = $_GET['status'];
$addr = $_GET['addr'];
//Match secret for security
if ($_GET['secret'] != $secret) {
return;
}
if ($status != 2) {
//Only accept confirmed transactions
return;
}
$db = new SQLite3('payments_db.sqlite', SQLITE3_OPEN_READWRITE);
//Mark address in database as paid
$stmt = $db->prepare("UPDATE payments set addr=:addr,txid=:txid,".
"value=:value where addr=:addr");
$stmt->bindParam(":addr", $addr);
$stmt->bindParam(":txid", $txid);
$stmt->bindParam(":value", $value);
$stmt->execute();
?>
我試着做這條線
requests.get("website.com/api", params=['addr':'value', 'value':'value', ETC...)
然后將其記錄為 json 但顯然這不是正確的方法,因為它不起作用。 有人基本上可以解釋如何從 API 發送給我的 URL 中獲取數據並將其轉換為我可以使用的數據嗎? 我只需要至少記錄正在發送的內容,我知道如何做剩下的事情。
你可以這樣做
from flask import request
@app.route("api/callbackurl")
def getData():
# get query string
status = request.args.get('status')
addr = request.args.get('addr')
您需要一個支持 GET 方法的路由。
@app.route('/api/callback_url')
def callback_url():
# your code here!
您可以通過請求對象根據名稱查詢 url 參數。
from flask import request
secret = request.args.get('secret')
如果該值不存在,則返回 None 或指定的默認值。
如果傳遞了類型參數,則會自動轉換該值。
status = request.args.get('status', 0, type=int)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.