首页
学习
活动
专区
圈层
工具
发布

$.ajax的post请求不好使了?

这几天在开发在线学习平台的过程,遇到这样的问题,先看js代码, ? 很简单的点击按钮,触发ajax 但是问题是,success里的回调根本就不执行,百般修改也没反应。再看php代码, ?...后来我把js代码中的data去掉,变成这样, ? 现在只有一个单纯的post请求而已 但即这样,依然没有执行success,这时我更加确定,就是http请求头方面的问题。...在网上反复查找php接收数据时的请求头方面的资料,终于确定,问题原因是,请求头的 header 里的Content-Type的问题。...直接说结果了,(既然$.ajax用不了,那就直接XMLHttpRequest对象)看代码, JavaScript代码: ? PHP代码: ? 解决了。...这个在线学习平台说起来简单,但这一路开发过来,踩进去的坑有很多,就这样继续吧,成功的路从来都是曲折的。

1.9K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一个兼容get请求和post请求的Ajax封装函数

    今天在看某风网老师录制的 Ajax 函数封装的视频,get 和 post 请求都考虑到了,我在这里也做一下笔记。 我把考虑到的都备注上了,以往可以给大家一点参考。...代码如下: JavaScript: function ajax(method, url, data, callback) { // method:请求方式,url:请求的地址,data:数据,callback...:回调     if (method == "post") { //如果是post请求         data = (function (obj) { // 自动执行的匿名函数 (function()...}         xhr.send(data); // 发送数据     } } 保存为 ajax.js 文件,使用时直接调用即可。...}         })     } 声明:本文由w3h5原创,转载请注明出处:《一个兼容get请求和post请求的Ajax封装函数》 https://www.w3h5.com/post

    2K10

    【笔记】跨域重定向中使用Ajax(XHR请求)导致跨域失败

    背景: 1、前端Web中有两个域名,a.com和b.com,其中a.com是访问主站(页面),b.com是数据提交接口的服务器(XHR请求) 2、a.com中用XHR调用b.com/cerate【没有指定协议...】,保存数据,写法如下: $.ajax({ url: "//b.com/create", type: 'POST', data: requestParams, dataType...(XHR等),当跨域预检(Option请求)时,如果出现非20X等时,会直接失败,抛出readtState: 0 解决方法: 1、在Ajax中明确https协议,避免b.com预检时返回302 $.ajax...,保持和线上环境一致,不让用户走到http://a.com,强制走https://a.com访问页面 总结: 之前一直觉得: 请求中不指定协议,使用//自动适配页面url的协议 是一个标准规范。...现在看来,对于简单请求,比如页面跳转、图片加载等确实是一个好的做法,但是对于后端接口请求这类,可能需要具体场景斟酌。这句话可以改为: 简单请求中不指定协议,使用//自动适配页面url的协议

    2.8K30

    第109天:Ajax请求GET和POST的区别

    一、Ajax请求GET和POST的区别   1.使用Get请求时,参数在URL中显示,而使用Post方式,则不会显示出来   2.使用Get请求发送数据量小,Post请求发送数据量大   3.get请求需注意缓存问题...Post方式:   当使用POST方式时,浏览器把各表单字段元素及其数据作为HTTP消息的实体内容发送给Web服务器,而不是作为URL地址的参数进行传递,使用POST方式传递的数据量要比使用GET方式传送的数据量大的多...一般来说,尽量避免使用Get方式提交表单,因为有可能会导致安全问题 三、AJAX乱码问题   产生乱码的原因:     1、xmlhttp 返回的数据默认的字符编码是utf-8,如果客户端页面是gb2312...然而,在以下情况中,请使用 POST 请求:     1、无法使用缓存文件(更新服务器上的文件或数据库)     2、向服务器发送大量数据(POST 没有数据量限制)     3、发送包含未知字符的用户输入时...2、请求结果无持续性的副作用。     3、收集的数据及HTML表单内的输入字段名称的总长不超过1024个字符。 五、案例  1、HTML代码(原生Ajax代码) 1 <!

    2.2K20

    使用Postman发送POST请求的指南

    前言作为一名软件测试工程师,掌握如何使用Postman发送POST请求是非常重要的技能。POST请求通常用于向服务器发送数据,以创建或更新资源。...与GET请求不同,POST请求通常包含在请求体(body)中发送的数据。发送POST请求的步骤在发送请求之前,我们需要先安装好postman,安装步骤在本文中不做赘述。...创建新请求打开Postman后,点击左上角的“New”按钮,然后选择“HTTP Request”来创建一个新的请求。设置请求类型和URL在新请求窗口中,将请求类型设置为“POST”。...如果服务器返回状态码201 Created,并且响应体包含注册成功的消息,那么表示请求成功。总结使用Postman发送POST请求是进行API测试的基本技能。...通过本文的步骤,你可以轻松地发送POST请求并验证服务器的响应。在实际测试中,还可以结合Postman的环境变量、测试脚本等功能,进一步提高测试效率和自动化程度。

    2.5K10

    如何使用 Lua 脚本进行更复杂的网络请求,比如 POST 请求?

    Lua,作为一种轻量级、高性能的脚本语言,经常被用于这些场景。本文将详细介绍如何使用Lua脚本进行更复杂的网络请求,特别是POST请求。...使用LuaRocks安装luasocket:bashluarocks install luasocket基本的POST请求下面是一个使用luasocket库发送POST请求的基本示例:lualocal...发送请求:使用http.request方法发送POST请求。这个方法接受一个表作为参数,包括URL、请求方法、头部、数据源和响应体的存储方式。...2发送请求:使用https.request方法发送HTTPS POST请求,其他步骤与HTTP请求相同。...总结通过本文的介绍,你应该已经了解了如何使用Lua脚本进行复杂的网络请求,包括发送POST请求、处理JSON数据和HTTPS请求。Lua脚本的灵活性和强大的库支持使其成为处理网络请求的理想选择。

    1.8K10

    使用Java监听POST请求的实现方法

    标题:使用Java监听POST请求的实现方法 在Web开发中,我们经常需要监听并处理POST请求。本篇博客将介绍如何使用Java语言来监听和处理POST请求的方法。...一、引入相关依赖 使用Java监听POST请求需要使用Web容器,例如Tomcat或Jetty。我们需要在项目的pom.xml文件中添加相应的依赖。... 在引入依赖后,我们就可以开始编写监听POST请求的代码了。 二、编写Servlet类 在Java中,我们可以使用Servlet来监听和处理HTTP请求。...可以使用工具如Postman发送POST请求到http://localhost:8080/my-endpoint,并传递相应的参数。...总结: 使用Java监听POST请求可以通过编写一个继承自HttpServlet的类,并重写doPost方法来实现。同时,我们需要将Servlet配置到Web容器中,以便它可以接收和处理POST请求。

    27810

    Django 中使用 ajax 请求的正确姿势

    思路整理 在 django 中使用 ajax 其实就是在前端代码中(一般是 js 中)使用 ajax 调用 django 的接口,然后去更新指定的页面部分。...第二种请求结果就是返回一个 html 页面,其实也就是提供表单的那个页面,所以这个函数可以做到一个函数提供了 GET 和 POST 两种返回。...设置一些默认的参数,简单理解就是在这个里面设置的参数,之后使用 ajax 的时候都会自动添加到请求中,比如可以设置请求头、传入参数等,而我这里是固定设置一个 csrfmiddlewaretoken 参数...小结:我对于使用 ajax 函数的理解思路比较简单,第一步是提取表单或者页面的标签中参数,然后处理和判断参数,当参数合法的时候开始执行请求,请求之前可以设置一下 csrfmiddlewaretoken...在 Django 提供接口给 ajax 的时候最好做到严格按照不同的返回码返回不同的信息 ajax 在请求接口完成之后,可以根据返回码的判断来执行不同的事件 比较耗时的请求可以使用缓存 版权声明:如无特殊说明

    2.5K10

    防止页面url缓存中 ajax中post 请求的处理方式

    一般我们在开发中经常会用到Ajax请求,异步发送请求,然后获取我们想要的数据,在Ajax中使用Get请求数据不会有页面缓存的问题,而使用POST请求可是有时候页面会缓存我们提交的信息,导致我们发送的异步请求不能正确的返回我们想要的数据...下面介绍一种方式来防止ajax中post 请求 页面缓存 url 信息: $.post(url,data ,ranNum:Math.random()} ,function(data){ if(...=data){ alert("success"); }else{ alert("error"); } }) url : 请求的...URL 地址 data : 请求的数据 ranNum : 这个是防止缓存的核心,每次发起请求都会用Math.random()方法生成一个随机的数字,这样子就会刷新url缓存 这个ranNum的生成方式有多种形式...这就是Ajax防止发送请求的时候防止url缓存的方法。

    2.4K20

    前端:如何处理AJAX请求的重复使用

    作者|FloatFlower 翻译|小丑 在开发前端时,我们经常使用AJAX来初始化数据并动态渲染在页面上,但是在遇到一连串的相同数据都要进行请求时,就有可能对同一个API 发出并发请求,然而,因为这些请求是同时发出...我们打开开发者模式就会发现,每个组件向该API发出了请求,因此就产生了10次的并发请求,但是在这种情况下,实际上我们仅需要让一个请求出去,另外9个元件等待这个请求的响应然后重新使用即可。...const eventEmitter = new EventTarget(); // 用于请求失敗时使用的事件监听器 const errorEmitter = new EventTarget();...请求已经被减少到剩下一个了,这是因为所有的元件都重复使用了一个同一个响应。通过这种方法将可以大大减少服务器的负载以及前端的运行时间。...总结 并非每一种情况下都可以使用这种方式来请求资源,如:每次请求资源都一定会发送不一样的API就不能使用这种方式进行API调用,但是像是上述范例中的用户资料,电商网站中的商品资料或文章等,类似能够确保在极短时间之内资源都是相同的

    2K10

    HttpClient使用详解与实战一:普通的GET和POST请求

    一般使用步骤 使用HttpClient发送请求、接收响应,一般需要以下步骤。 HttpGet请求响应的一般步骤: 1)....如果是无参数的GET请求,则直接使用构造方法HttpGet(String url)创建HttpGet对象即可; 如果是带参数GET请求,则可以先使用URIBuilder(String url)创建对象,...如果是无参数的GET请求,则直接使用构造方法HttpPost(String url)创建HttpPost对象即可; 如果是带参数POST请求,先构建HttpEntity对象并设置请求参数,然后调用setEntity...请求 模拟使用百度搜索关键字”java”,并保存搜索结果为html文件 /** * 带参数的GET请求 * 两种方式: * 1.直接将参数拼接到url后面 如:?...请求 无参数的POST请求,并设置Header来伪装浏览器请求 /** * 常规post请求 * 可以设置Header来伪装浏览器请求 */ public class DoPOST {

    2.1K31

    使用 POST 方法与 JSON 格式进行 HTTP 请求的最佳实践

    使用 POST 方法与 JSON 格式进行 HTTP 请求的最佳实践 在现代的 Web 开发中,API 接口的设计与使用是至关重要的。...本文将详细介绍如何在 HTTP 请求中使用 POST 方法,并采用 JSON 格式在请求体中发送数据,重点讲解请求头的配置、不同编程语言中的实现方式,以及在实际开发中需要注意的要点。...二、JSON 格式的优势 JSON 是一种轻量级的数据交换格式,其全称是 JavaScript Object Notation,尽管它起源于 JavaScript,但在如今的开发环境中,几乎所有的编程语言都支持...使用 Python (Requests 库) Python 的 requests 库提供了简单的接口来发送 HTTP 请求,以下是使用 requests 库发送 POST 请求的示例: import requests...六、总结 通过本文的介绍,我们详细探讨了如何在 HTTP 请求中使用 POST 方法,并在请求体中传递 JSON 格式的数据。

    86410
    领券