[英]Sending data with XMLHttpRequest
我有一个网站,当按下按钮时,应该将名称发送到python脚本(在第三方网站上)。 然后,此python脚本会将名称改为大写,然后将其返回给网站。
现在,按下按钮时可以正确发送XMLHttpRequest,但是我不确定如何使用XMLHttpRequest正确发送数据,以及如何在python脚本中访问此数据。
XMLHttpRequest的:
document.getElementById("myButton").addEventListener("click",
function() {
var myRequest = new XMLHttpRequest();
myRequest.open('GET', 'https://example.com/');
myRequest.onreadystatechange = function () {
if (myRequest.readyState === 4) {
alert(myRequest.responseText);
}
}
myRequest.send("Bob"});
}
);
Python脚本:
from flask import Flask, jsonify
from flask_cors import CORS
from requests import request
app = Flask(__name__)
CORS(app)
@app.route("/", methods=["GET"])
def hello_world():
return jsonify(name = (name_sent_by_XMLHttpRequest).upper()) # Should return "BOB"
if __name__ == '__main__':
app.run()
我对javascript的XMLHTTPRequest一无所知,但是在某个时候,您需要将name
发送到python服务器,对吗? 如何做到这一点取决于您,但是基于GET的选项:
带有参数的GET请求: https://example.com/?name=your_name_goes_here
: https://example.com/?name=your_name_goes_here
name https://example.com/?name=your_name_goes_here
在烧瓶应用中,在路由"/"
上侦听的函数现在将可以访问该arg,例如
name = request.args.get('name', '')
那么您可以将其uppercase()并以某种格式返回-可能是XML?
return Response(my_xml, mimetype='text/xml')
根据您的评论进行更新:通常在flask函数中,您将使用flask request
对象来获取URL参数。 在您的示例中,您将requests
模块作为request
导入,而不是使用它,而是破坏了flask.request
命名空间。 将您的导入更改为类似的内容,它应该可以正常工作:
from flask import Flask, jsonify, request
from flask_cors import CORS
import requests
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.