我正在使用 JQuery 1.9.2,尽管这个问题可能与 JQuery 无关。我正在使用此代码自动提交 HTML 表单...
<script type="text/javascript">
$(function() {
$('#autolaunch').submit();
});
</script>
…
<form id="autolaunch" name="autolaunch" action="${ltiLaunchUrl}" method="post">
<input type="hidden" name="lti_version" value="${lti_version}" />
<input type="hidden" name="lti_message_type" value="${lti_message_type}" />
…
<input type="hidden" name="lis_person_name_given" value="${lis_person_name_given}" />
</form>
表单的操作与访问此页面的服务器处于不同的域。我的问题是,如何在提交此数据时添加 header ?我想要添加的 header 看起来像 name =“LTI-Authorization”和 value =“Token ConsumerKey:consumerSecret”。
最佳答案
您无法向表单添加 header 。
添加新的隐藏输入,而不是 header 。
<input type="hidden" name="LTI-Authorization" value="Token consumerKey:consumerSecret" />
您可以使用ajax请求或XHR添加 header 。
$.ajax({
type: 'POST',
url: url,
headers: {
"LTI-Authorization":"Token consumerKey:consumerSecret"
},
data: {
"lti_version":"${lti_version}" // all other data
}
}).done(function(data) {
alert(data);
});
关于jquery - 自动提交表单时,如何添加标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31706550/