做过前端同学想必都避免不了要和后台server打交道.而以下这三种与后台交互的方式想必大家都不陌生. Form表单提交,Ajax请求,Angular的$http请求 以前一直搞不清楚什么时候应该用哪种方式请求数据,正好最近在做文件上传相关业务,顺便对这三种方式的使用场景及区别做个简单总结. 用法 以下是三种请求方式的API详细介绍: Form: https://www.w3schools.com/html/html_forms.asp Ajax: http://api.jquery.com/jQ…
import { mapMutations} from 'vuex' import axios from 'axios' const mixins = { data() { return { } }, methods: { ajaxSend(reqType,urlSuffix, paramsData) { // 公共请求数据的方法. let vm = this; // let storage = window.localStorage; // let zksysReqParams = { //…
1.前言 最近迷恋WEB方面的技术,虽然自己是一个嵌入式工程师,但是我深知若需要把传感器终端的数据推送至“平台”必然会和WEB技术打交道.在工作中发现嵌入式工程师喜欢 二进制形式的协议,例如MODBUS.虽然这些协议使用广泛,但是使用这些协议需要在服务器侧专门做一个复杂的解析程序,之后再把数据搬入数据库,这便带来了升级或修改的风险.如果可以使用现有的 HTTP 表单手段或 JSON+RESTFUL手段,是不是可以简化嵌入式推送数据至互联网的过程.答案是可以,那就从PHP表单开始“复习”吧. 2.…
前言 通常我们需要在html页面上输入框里面输入数据,比如登录的时候,输入账号和密码,点提交按钮. 从html把数据提交到服务端,服务端接收数据后判断提交的数据,然后做出对应的响应,这么一整个流程就是表单相关的知识点,涉及到数据的交互. form表单 表单在html中由<form>标签实现,一个完整的表单包含四个部分:提交地址.请求方式.元素控件.提交按钮,简单的html表单如下 action 提交地址,设置用户提交的数据由哪个url接收和处理 method 请求方式,get或post请求 i…
问题描述 一般的form表单提交是单向的:只能给服务器发送数据,但是无法获取服务器返回的数据,也就是无法读取HTTP应答包. 想要真正的半双工通讯一般需要使用Ajax, 但是Ajax对文件传输也很麻烦. 解决方法 方法一: jQuery封装了一个form表单提交有回调功能的方法 导入 jquery jquery-form.js 如下: 一个上传文件的form <form id="form1" action="/shop/updateUserinfo" enct…
有些时候我们的前端页面总没有<form></form>表单,但是具体的业务时,我们又必须用表单提交才能达到我们想要的结果,LZ最近做了一些关于导出的一些功能,需要调用浏览器默认的下载功能,如果用ajax请求,则无法调用.所以只能用表单提交的方式请求后台方可调用浏览器默认的下载功能.这个时候我们只能自己手动添加<form></form>元素.这里LZ提供我自己遇到的两种情况: 一:在原有的html结构包上<form></form>标签,…
实际编码中我们经常写路径,写路径既可以写相对路径,也可以写绝对路径.我2年以前我就养成了习惯,只要是写路径我从来都是写绝对路径,因为万一将来我们的项目的目录发生变化,原来要是写相对路径的话就会有路径依赖关系,改的地方太多了.而且相对路径在某些情况下还有点特殊,有的是相对于原来的请求的目录,有的是相对于整个web应用,所以我强烈建议大家以后写路径统一用绝对路径(以"/"开头)来写,"/"表示站点的根路径. 写路径的情况无非下面4种情况,这里做一个整理. 1,超链接 假…
今天用到了jqueryEasyUI的form表单做一个增加操作的提交,想打开调试(用的是火狐)看看传的参数,但是怎么也看不到form表单提交的http请求?而且还会发送一个另外的请求! 在页面加载时,会首先初始化一个datagrid,然后可以选择是否选择添加操作.另外发送的这个请求,就是这个datagrid想后台请求数据的请求.就相当与重新刷新了datagrid. datagrid请求数据库数据的操作写在$(function(){})里面,后来想想,是不是这个原因,jqueryEasyUI的fo…
浏览器的策略本质是:一个域名下面的JS,没有经过允许是不能读取另外一个域名的内容,但是浏览器不阻止你向另外一个域名发送请求. 所以form表单提交没有跨域问题,提交form表单到另外一个域名,原来页面是无法获取新页面的内容,或者说form提交后不需要返回,但是ajax是需要返回的. 而ajax是想要读取响应内容,浏览器是不允许你这么做的. 世界本无跨域,是浏览器不允许js访问别的域,但是浏览器却没有限制自己,img标签和script标签都是可以加载其他域的图片或者js文件.这不就是jsonp的跨…
// 表单提交form.on('submit(first1)', function (data) { var articleFrom = data.field; $.ajax({ type:"POST", url:"/user/upDate", data:articleFrom, dataType:"JSON", success:function (data) { if(data.flag){ layer.closeAll(); } } });…