So I am developing a Apache Cordova app for Android, and I'd like to be able to set the headers for the AJAX requests I am sending, including the Host, Origin, and Referer fields. Because these are being executed in a separate WebView, I can't access the user's original cookies or sessions (I'm not being malicious, I promise). But whenever I attempt to send that information, I get a "Refused to set unsafe header Host" error. Is there any way to override this in Apache Cordova?
2条回答 默认 最新
weixin_33696106 2015-02-20 02:25关注If you are using jQuery, you can try using the
headersoption when setting up the call. You can also use thebeforeSendoption if you need more fine-grained control over the headers.//set specific accept headers (should work cross browser) $.ajax({ headers: { Accept : "text/plain; charset=utf-8", "Content-Type": "text/plain; charset=utf-8" } }); //an alternative to the above $.ajax({ beforeSend: function(xhrObj) { xhrObj.setRequestHeader("Content-Type","application/json"); xhrObj.setRequestHeader("Accept","application/json"); } });解决 无用评论 打赏 举报