我是Jquery的新手,下面的腳本不會在HTML頁面上產生任何輸出。從python腳本發送JSON到JQuery
問題:
在我的劇本,我使用requests
庫發送GET請求返回一個JSON對象的燒瓶中的URL。然後需要將該對象發送給JQuery,然後該JQuery將輸出網頁上的JSON對象。如果我使用response.text
發送數據,它可以正常工作,但是如果我使用response.json()
發送數據,它不會輸出任何內容。不過,我需要將它作爲JSON對象發送,以便我可以從中提取所有數據並將其放在HTML元素上。
getajaxtest.py:
import requests
import json
def send_log_ajax():
url = 'http://xx.com/returnjsonobj'
response = requests.get(url)
return response.json()
if __name__ == '__main__':
ajax_var = send_log_ajax()
print(ajax_var)
的HTML和JQuery:
<html>
<head><script
src="https://code.jquery.com/jquery-3.2.1.min.js"></script></head>
<body>
<div style="border:1px solid black;background-color:lightgray">
<p id="transactioninfo">Loading Transaction Information...</p>
</div>
<script>
function getlogs() {
var url = 'www.myserver.com/getajaxtest.py';
$.ajax({
type: 'GET',
url: url,
dataType: 'json',
success: function(data) {
$("#transactioninfo").html(data)
},
error: function(e) {
console.log(e.message);
}
});
}
$(document).ready(function(){
setTimeout(function(){getlogs();}, 2000);
setInterval(function(){getlogs();}, 2000);
});
</script>
</body>
</head>
</html>
我應該使用'response.text'然後在JQuery中使用'dataType:'json''嗎?不需要轉換,我只需要從Jquery – omrakhur
@omrakhur中的鍵中提取值:然後只需輸出Unicode文本的'response.text',或直接將'response.content'寫入'sys.stdout。緩衝區「來避免從字節解碼並再次編碼。 –
我在'response.content'和'response.text'之間有些困惑。如果我使用前者,那麼當它返回給JQuery時它仍然會被視爲JSON嗎? – omrakhur