有一个HTTP请求的Linux curl示例:
curl https://api.paypal.com/v1.3/transactions/qrcode \
-H "Authorization: Bearer <TOKEN>" \
-d amount=100 \
-d currency="USD" \
-d reference="jsd342113" \
-d ipn_url="http://demowebsite.com/ipn"
现在我想参加演唱会。
我知道如何转换-d
参数,但是我不知道如何协调-H
参数。
<form method="post" action="http://demo/api/x">
<input type="hidden" name="amount" value="100"/>
<input type="hidden" name="currency" value="USD"/>
<input type="hidden" name="reference" value="jsd342113"/>
<input type="hidden" name="ipn_url" value="http://demowebsite.com/ipn"/>
<input type="submit" value="Pay Now" />
</form>
但是我该如何在表单中添加-H
参数?
答案 0 :(得分:0)
无法在表单中添加HTTP请求标头,但是您可以使用ajax替换它。
答案 1 :(得分:0)
不幸的是,自定义标头必须使用javascript / XMLHttpRequest完成,而不是<form>
。像
<div id="myform">
<input type="hidden" name="amount" value="100" />
<input type="hidden" name="currency" value="USD" />
<input type="hidden" name="reference" value="jsd342113" />
<input type="hidden" name="ipn_url" value="http://demowebsite.com/ipn" />
<input type="submit" value="Pay Now" />
<script>
document.querySelector("#myform > [type=submit]").addEventListener("click", function() {
var all = document.querySelectorAll("#myform > input");
var inputs = new FormData();
for (var i = 0; i < all.length; ++i) {
inputs.append(all[i].name, all[i].value);
}
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://demo/api/x");
xhr.setRequestHeader("Authorization", "Bearer <TOKEN>");
xhr.send(inputs);
});
</script>
</div>
现在,请向W3C投诉<form>
帖子中缺少标题控制。