Reputation: 184
How do I make a post request from java to flask? Why can I get the data sent to the server?
<button name="send" id = "sendbutton">Send</button>
document.getElementById("sendbutton").addEventListener('click', () => {
var image = canvas.toDataURL();
var r = new XMLHttpRequest();
r.open("POST", "http://127.0.0.1:5000/truthMask", true);
r.onreadystatechange = function () {
if (r.readyState != 4 || r.status != 200) return;
//alert("Success: " + r.responseText);
console.log("sent");
};
r.send(input="test");
});
@app.route('/truthMask', methods=['POST'])
def set_truthMask():
print("Got the data")
foo = request.args.get("input")
print("Print the data: {}".format(foo))
return "sent"
Upvotes: 0
Views: 1437
Reputation: 790
JS Code
document.getElementById("sendbutton").addEventListener('click', () => {
var image = canvas.toDataURL();
var r = new XMLHttpRequest();
r.open("POST", "http://127.0.0.1:5000/truthMask", true);
r.onreadystatechange = function () {
if (r.readyState != 4 || r.status != 200) return;
//alert("Success: " + r.responseText);
console.log("sent");
};
// Send data in below way from JS
r.send(JSON.stringify({"input": "test"}));
});
Python Flask API
import json
@app.route('/truthMask', methods=['POST'])
def set_truthMask():
print("Got the data")
foo = json.loads(request.data.decode())["input"]
print("Print the data: {}".format(foo))
return "sent"
Don't forget to import json
Upvotes: 7