当前位置: 首页 > 面试题库 >

发送带有标头和FormData的XMLHttpRequest

方奕
2023-03-14
问题内容

我正在尝试发送带有标头的XMLHttpRequest并添加FormData。有没有一种(优雅的)方式我可以做这样的事情:

var formData = new FormData();
formData.append("file", file);
var xhr = new XMLHttpRequest();

xhr.open("POST", "/ajax_gateway.php?mod=fileupload", true);
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded")
xhr.send(formData, "token=add");

问题答案:

您无法Content-Type在发送时指定标题,FormData因为该标题会"multipart/form- data"被浏览器自动设置为。您也可以设置其他标题,请尝试以下操作:

var formData = new FormData();
formData.append("file", file);
formData.append("mod", "fileupload");
formData.append("token", "add");

var xhr = new XMLHttpRequest();
xhr.open("POST", "/ajax_gateway.php");
xhr.setRequestHeader("X-Answer", "42");
xhr.send(formData);


 类似资料:
  • 问题内容: 我尝试构建一个python脚本,该脚本发送带有用于提取结果的参数的POST。通过提琴手,我提取了我要返回的帖子请求。该网站仅使用https。 现在我的python脚本: 但是当我运行脚本时,出现以下错误: 问题答案: 非常感谢您链接到请求模块。太完美了。下面解决我的问题。

  • 问题内容: XMLHttpRequest的2级标准(还是一个工作草案)定义FormData的接口。该接口允许将对象附加到XHR请求(Ajax请求)。 顺便说一句,这是一个新功能-过去曾使用过(请在我的另一个问题中阅读)。 它是这样工作的(示例): 哪里是字段,并且是Ajax请求的成功处理者。 在所有浏览器中(同样,除IE之外),它都能很好地工作。 现在,我想使此功能与jQuery一起使用。我尝试了

  • 我正在使用PHP rest API将数据从JS客户机发布到PHP8服务器。我正在使用JS方法。当使用时,formdata被发送到PHP的全局$_post中,但是由于我需要更新数据,我不得不使用。不知何故,Google Chrome没有将格式数据发送到服务器,我也不知道为什么。有人知道原因吗?

  • 问题内容: 出现以下错误: 对于以下行: 如果我将其注释掉,它将在下一个echo语句中引发错误。关于PHP为什么这么讨厌我的echo语句的想法? 这是我对HTML底部的包含: 问题答案: 问题不是问题所在。看起来您在文件的后面某处有一个呼叫,但是一旦输出任何文本,就无法发送标头。您可以将标题移到脚本的开头,也可以使用输出缓冲。

  • 有棱角的 代码在此处输入图像描述 Spring 错误2021-01-02 16:50:55.397 WARN 15076---[nio-8080-exec-1]。w、 s.m.s.DefaultHandlerExceptionResolver:已解决[org.springframework.web.method.annotation.MethodArgumentConversionNotSuppo

  • 在查看了文档之后,我注意到没有一个GET方法接受头作为参数,发送头(如accept和Authorization)的唯一方法是使用exchange方法。 因为这是一个非常基本的动作,我想知道我是否遗漏了什么,还有另一个更容易的方法来做它?