首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当尝试从ajax (Wordpress插件)将FormData中的Blob发布到php时,出现400 (错误请求)

当尝试从ajax (Wordpress插件)将FormData中的Blob发布到php时,出现400 (错误请求)的原因可能是由于以下几个方面引起的:

  1. 数据格式错误:在将Blob数据发布到php时,可能存在数据格式错误。请确保在FormData中正确设置Blob数据,并在ajax请求中正确传递FormData对象。
  2. 请求头设置错误:在ajax请求中,可能未正确设置请求头。请确保设置正确的Content-Type头,以便php能够正确解析接收到的Blob数据。
  3. 服务器端处理错误:php端可能未正确处理接收到的Blob数据。请确保php端能够正确解析和处理Blob数据,并返回正确的响应。

针对以上问题,可以尝试以下解决方案:

  1. 检查数据格式:确保在FormData中正确设置Blob数据。可以使用Blob对象的slice方法将文件切片,并将切片后的Blob数据添加到FormData中。
  2. 设置请求头:在ajax请求中,设置正确的Content-Type头。对于Blob数据,可以设置为"multipart/form-data"。
  3. 检查服务器端处理:确保php端能够正确解析和处理接收到的Blob数据。可以使用php的$_FILES全局变量来获取上传的文件信息,并进行相应的处理。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 云服务器(CVM):提供弹性计算能力,满足各类业务需求。详情请参考:https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版(CDB):提供高性能、可扩展的关系型数据库服务。详情请参考:https://cloud.tencent.com/product/cdb_mysql
  • 云存储(COS):提供安全、稳定、低成本的对象存储服务。详情请参考:https://cloud.tencent.com/product/cos

请注意,以上推荐的腾讯云产品仅供参考,具体选择还需根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Ajax

/ajax.php)",true) //注意点:url不能出现中文,只能数字、字母、ASCII码、下划线 // GET方式 url格式:./ajax.php?t=123&321.........header("content-type:text/xml;charset=utf-8"); //file_get_contents() 函数是用于文件内容读入一个字符串首选方法。...json字符串是无法使用parse,那么可以试试用eval()强制转化和为js对象 非标准json转js对象 //服务器返回数据不是标准json字符串是无法使用parse,那么可以试试用eval.../json.txt)"); 跨域 ajax请求过程:ajax发送请求–浏览器–服务器 响应过程则是请求过程颠倒 ajax发送请求浏览器,浏览器发送到服务器,处理并响应后,原路返回到浏览器,此时会验证其请求来源域名跟发送请求是否一样...,是则过,否则会被浏览器截止并提示错误,这正是跨域所造成,想要解决此问题,并不能从前端入手,应该后端,只有在后端响应并返回后告诉浏览器是自己人即可。

5.9K10

CVE-2022-21661:通过 WORDPRESS SQL 注入暴露数据库信息

插件和主题使用此对象来创建他们自定义帖子显示。  插件使用易受攻击,就会出现该漏洞。一个这样插件是Elementor Custom Skin 。.../ajax-pagination.php 请求发送到wp-admin/admin-ajax.php并且操作参数是ecsload,调用get_document_data方法。  ...is called } 图 2 - wordpress/wp-admin/admin-ajax.php admin-ajax.php页面检查请求是否由经过身份验证用户发出。...如果请求来自未经身份验证用户,admin-ajax.php调用未经身份验证 Ajax 操作。...同样, Contact Form 7文件上传漏洞插件也被检测为被趋势科技传感器利用。在这种情况下,错误通过插件暴露,但存在于 WordPress 本身

3.9K10

Form​Data 对象使用

通过HTML表单创建FormData对象节 想要构造一个包含Form表单数据FormData对象,需要在创建FormData对象指定表单元素。...)); 你还可以在创建一个包含Form表单数据FormData对象之后和发送请求之前,附加额外数据FormData对象里,像这样: var formElement = document.querySelector..."POST", "submitform.php"); formData.append("serialnumber", serialNumber++); request.send(formData); 这样你就可以在发送请求之前自由地附加不一定是用户编辑字段表单数据里...你还可以直接向FormData对象附加File或Blob类型文件,如下所示: data.append("myfile", myBlob, "filename.txt"); 使用append()方法,...如果你想知道不使用FormData对象情况下,通过AJAX序列化和提交表单 请点击这里。

1.1K20

github & CSRF

准备水坑攻击和CSRF攻击语句 我们假设该员工在企业办公内网访问自己博客这样我们直接构造一个攻击内网服务器CSRF代码并嵌入博客网页里 这里选择内网redis CSRF攻击因为redis在内网分布很广而且因为...redis良好容错性前后不管是否语句错误只要遇到正确语句就会执行因此可以利用JS进行http请求来攻击内网redis服务 这里用multipart/form-data表单方式来构造payload...如图每条命令间都是显式换行分割 这个请求包发送到redis后会一行一行执行错误命令执行失败正确命令则执行成功 所以说redis兼容是挺强大执行错误后依然会尝试执行后面的语句 不过很可惜这个博客是...ip远程txt文件里,用前端请求写入原因是,防止博主客户端未来得及解析js攻击代码又重新刷新了一次网页,这样其实在上一次请求后端已经写入了ip远程文件里,因此下一次就不输出js攻击代码了 (恕小编智商不够...收集内网redis服务 重返github继续搜索该企业内网redis服务 并把这些内网ip全部构造博客ajax请求里 5. 等待员工在企业内网访问自己博客 ……..

92380

如何修复WordPress内容更新和发布失败错误

幸运是,有一些常见原因和解决方法可以帮助您在遇到此问题解决它。通过一些故障排除,您应该立即恢复常规发布时间表。...一个这样问题是在WordPress编辑器显示“发布失败”消息: 图片 区块编辑器发布失败错误 单击蓝色发布” 按钮后可能会出现此消息,以尝试使您内容生效。...此错误一个变体是“更新失败”消息,尝试对已发布文章或页面进行更改时,可能会显示该消息: 图片 在区块编辑器更新失败错误 可以想象,这个问题对于博主以及任何发现自己需要更新其网页上关键信息网站所有者来说可能是一个特别令人沮丧问题...要访问它,请导航工具>站点健康: 图片 访问WordPress站点运行状况工具 在“状态” 选项卡下,WordPress 列出您安装存在所有问题。...,请确保wp-config.php 删除此代码。

5.2K30

渗透测试之黑白无常“续”

艰难挺近后台 经过上一个网站铺垫,所以打开目标网站后,第一间感觉系统属于WordPress框架,然后尝试默认后台/wp-admin/能否访问。 ?...后台为默认后台,但是账号却不再是弱口令,在尝试了大量弱口令和常用口令后,都未成功,针对前台一系列测试也并没有取得一定成功,测试这一陷入僵局。...看见有Robots.txt文件,相信很多在做渗透测试时候都是基于该文件寻找敏感目录或者敏感文件,可是本次测试,该文件并没有提供有效目录或者文件信息,但是却给予了管理员信息,导致尝试登陆后台过程中进入后台...根据已经发布文章显示,该网站后台管理员使用账户是admin,但是密码却并不清楚,在尝试了大量密码后,最后突发奇想开始围绕着Robots.txt文件里zhangchao这个名字进行构造密码,在尝试了...默认值为bwg,所以根据WordPress规则这里拼出URL应该就是: http://localhost/wordpress-5.2.3/wp-admin/admin-ajax.php?

2.1K10

如何修复WordPress更新失败发布失败错误,您可能已掉线

如何修复WordPress更新失败/发布失败错误,您可能已掉线   WordPress CMS是一个完全开源工具,对用户免费,但是,由于插件等原因,有时会出现一些奇怪错误消息,这些WordPress...尝试发布或更新您文章,该消息就会弹出,提示“更新失败或发布失败,您可能已掉线” ,这意味着您文章不会被发布或更新,并且可能已经编辑好文章会不能保存,   本文旨在帮助分析了解WordPress...停用插件后,可以尝试更改文章编辑屏幕,如果WordPress发布失败错误消失,则可能是其中一个插件问题问题。   ...3、Cloudflare等防火墙服务   使用Cloudflare之类Web防火墙服务,此类服务可能会阻止REST API请求。   防火墙过滤器认为您IP地址可疑,可能会发生这种情况。...将以下几行添加到您wp-config.php文件

6.4K20

你真的会使用XMLHttpRequest吗?

看到标题,有些同学可能会想:“我已经用xhr成功地发过很多个Ajax请求了,对它基本操作已经算挺熟练了。”...---- 接下来我站在使用者角度,以问题形式介绍xhr基本使用。 我对每一个问题涉及知识点都会进行比较细致地介绍,有些知识点可能是你平时忽略关注。...默认值:空字符串"" 请求完成,此属性才有正确请求未完成,此属性值可能是""或者 null,具体与 xhr.responseType有关:responseType为""或"text...onload 请求成功完成触发,此时xhr.readystate=4 onloadend 请求结束(包括请求成功和请求失败)触发 onabort 调用xhr.abort()后触发 ontimeout...这样判断是有坑儿,比如返回http状态码不是200,而是201请求虽然也是成功,但并没有执行成功回调逻辑。所以更靠谱判断方法应该是:http状态码为2xx或304才认为成功。

1.5K30

【通信】前端几类数据交互方式

) 302-临时重定向(下回依然会请求这个服务器) 304-Not Modified(date 缓存未过期、缓存过期) //4xx 请求错误,主要错误原因在客户端 //5xx 服务端错误 //6xx...http状态码 eval、json ajax2.0概念 Ajax2.0 兼容IE10+ FormData(容器): set()、get()、append()、delete()…等 文件上传,依赖FormData...(Blob)\xhr.send(Buffer) ,Blob\Buffer二进制数据 FormData //FormData 一种容器 //formData.set('name',value) <input...,如show() jquery jsonp功能 注意:jQueryjsonp不是Ajax $(function(){ $.ajax({ url:'https://sp0.baidu.com...聊天室业务分析: 1、用户注册、登陆 2、发言-》其他人 3、离线消息(离线时候把数据存起来,等对方连接了,再从数据库取出来) 数据-》数据库 1、用户 2、消息 单聊与群聊区别

24210

XMLHttpRequest使用指南大全

接下来我站在使用者角度,以问题形式介绍xhr基本使用。 我对每一个问题涉及知识点都会进行比较细致地介绍,有些知识点可能是你平时忽略关注。...请求是一张图片,通过 response content-type 改为'text/plain; charset=x-user-defined',使得 xhr 以纯文本格式来解析接收到blob...默认值:空字符串”“ 请求完成,此属性才有正确请求未完成,此属性值可能是”“或者 null,具体与 xhr.responseType有关:responseType为”“或"text",...onload 请求成功完成触发,此时xhr.readystate=4 onloadend 请求结束(包括请求成功和请求失败)触发 onabort 调用xhr.abort()后触发 ontimeout...这样判断是有坑儿,比如返回http状态码不是200,而是201请求虽然也是成功,但并没有执行成功回调逻辑。所以更靠谱判断方法应该是:http状态码为2xx或304才认为成功。

1.3K30

WordPress安全架构分析

请求形似 wp-admin/admin-ajax.php?...但我们注意请求带有nonce参数,这样一来,我们就没办法通过欺骗点击方式来触发漏洞了。 wordpressnonce机制另一个角度防止了这个漏洞利用。...esc_url() 用于过滤url可能会出现地方,这个函数还有一定处理url进入数据库情况($_context为db) esc_js() 用于过滤输出点在js情况,转义" &,还会对换行做一些处理...标签情况,相应转义 tag_escape() 用于出现在HTML标签情况,主要是正则 在wordpress主站所有源码,所有会输出地方都会经过这几个函数,有效避免了xss漏洞出现。...短代码是一个比较特殊东西,这是Wordpress给出一个特殊接口,文章加入短代码,后台可以通过处理短代码返回部分数据文章,就比如文章阅读数等… 当我们传入 [wpstatistics stat

1.5K20

大文件上传服务器:支持超大文件HTTP断点续传实现办法

值; 浏览器ID 是系统在浏览器访问文件上传站点自动给浏览器授予。...三、执行上传 在查询完文件断点续传信息后,如果文件确实以前已经上传,服务器返回已经上传过文件尺寸,我们接着已经上传文件尺寸位置开始上传数据即可。...= fileObj.slice(start_offset,filesize); var fileOfBlob = new File([blob], fileObj.name); //附加文件数据应该放在请求前面...('fileid', fileid); //请将文件数据放在最后域 //formData.append("file",blob, fileObj.name); formData.append('...); } 为了验证文件断点续传,笔者做了一个简单界面,用于显示文件上传过程状态信息,界面如下: ?

1.8K10

使WordPress达到最佳运行状态13个技巧

升级WordPress发布最新版本 WordPress 2.7在运行方面比以往有了很大进步。 升级wordpress最新版本之后你就可以体验这一点了。 2....尽量减少PHP和数据库查询 我 Wpcandy’s simple ways to speed up WordPress这篇文章中了解这个好方法。 减少PHP和数据库查询的确是个明智选择。...加载页面,如果浏览器还要执行PHP查询,就会延长加载时间。 可以用静态HTML代替PHP查询,这样每次加载页面,浏览器就只需要读取HTML代码。 4....PHPMyAdmin修复并优化数据库 你可以一个星期登录一次PHPMyAdmin,优化自己数据库。 定位你WordPress数据库表,在复选框中选中所有表,选择“优化数据库表”选项进行修复。...你也可以在指定页面或文章添加CSS文件,然后所有CSS文件放进同一个文件。 10.DB Cache 这款插件按给定时间缓存每个数据库查询。 插件运行速度快,缓存占据硬盘空间也很小。

1K30

大文件上传服务器:支持超大文件HTTP断点续传实现办法

值; 浏览器ID 是系统在浏览器访问文件上传站点自动给浏览器授予。...三、执行上传 在查询完文件断点续传信息后,如果文件确实以前已经上传,服务器返回已经上传过文件尺寸,我们接着已经上传文件尺寸位置开始上传数据即可。...= fileObj.slice(start_offset,filesize); var fileOfBlob = new File([blob], fileObj.name); //附加文件数据应该放在请求前面...('fileid', fileid); //请将文件数据放在最后域 //formData.append("file",blob, fileObj.name); formData.append('...); } 为了验证文件断点续传,笔者做了一个简单界面,用于显示文件上传过程状态信息,界面如下: ?

1.5K10

DOMString、Document、FormDataBlob、File、ArrayBuffer (转)

我们打开工具查看下请求: 以上分别是Firebug和Chrome开发者工具查看结果。 ? ? 我们再看下传统Ajax请求: 差异还是比较大。...但是,并不是所有的图片都能以Blob形式请求,因为,毕竟是Ajax请求嘛,还是有一定跨域限制。...File对象自身也有一些属性与方法,但是,有些已经过时——不推荐使用,因此,当前很多HTML5 Ajax文件上传下载教程中出现是属性和方法都是过时,不要盲目Copy,请大家明辨!...例如,我们设置Ajax请求responseType为”arraybuffer“,我们去请求某mm图片,返回response就是ArrayBuffer,就是个二进制对象。...不过一个可读写(脱掉buffer限制),一个数据源命。

2.7K30

XMLHttpRequest Level 2 使用指南

* 传送和接收数据,没有进度信息,只能提示有没有完成。   * 受到"同域限制"(Same Origin Policy),只能向同一域名服务器请求数据。...四、HTTP请求时限 有时,ajax操作很耗时,而且无法预知要花多少时间。如果网速很慢,用户可能要等很久。...新版本XMLHttpRequest对象,增加了timeout属性,可以设置HTTP请求时限。   xhr.timeout = 3000; 上面的语句,最长等待时间设为3000毫秒。...五、FormData对象 ajax操作往往用来传递表单数据。为了方便表单处理,HTML 5新增了一个FormData对象,可以模拟表单。 首先,新建一个FormData对象。   ...* error事件:传输中出现错误。   * loadstart事件:传输开始。   * loadEnd事件:传输结束,但是不知道成功还是失败。 十、阅读材料   1.

1K90
领券