今天在群里有朋友问了这个问题,对于新手来讲这个问题确实很纠结。
在基于Restful 编程之后这个问题对于高手来说,又有另一个层面的纠结了。

先说第一个层面的问题:
需要跳转页面的时候用表单提交,不想刷新页面的时候用ajax提交。与移动终端共用Restful接口的情况下用异步提交
表面上区别是页面是否跳转,本质上是同步异步的区别。影响的用户的交互体验。

问题:都用ajax提交呢?
技术上都是可以的,看你的场景还有交互体验。

什么是共用restful接口?
先说共用场景:
比如有手机客户端,手机wap,web的情况下,同一个登录功能是可以做成 Restful接口形式。
一个接口三端公用
Restful接口:Restful是一种基于http轻量级的webservice服务,是一种架构设计理念。
个人理解就是回归 http请求本身。
这里还有提到RestFul风格的请求URL:
例如:
传统风格:http://t.51jdy.cn/thread-38-1-1.html 
RestFul风格: http://t.51jdy.cn/thread/38/1/1 或者 http://t.51jdy.cn/thread/?38

第二个层面的问题:
web基本全是ajax与后台交互。
其实在之前的 extjs这样的框架中就开始大量使用ajax与后台交互。
在 angularjs  兴起以后,这种使用的程度更高了,在此基础上并给了个称号,叫 web层的控制反转。
这种和模版语言的区别就是有web端主动发起请求,这时的web端其实和app,以及其他接口调用方就无差别了。
在这种架构下,后台的接口就可以共享了,因为后台统一是 http请求,统一返回 json格式,不在乎是app请求,还是web请求,
只要接口文档统一即可。
这种情况有他的优势,适合管理系统。类似cms这种需要百度收录的系统就不行了,因为ajax数据是动态的,百度没法抓取。当然也有专门针对性的解决方案。
这样以来,web前端人员要会html css js ajax,这种情况下js代码会大量堆积。过来的业务控制暴露在浏览器(js代码浏览器是可以看到的)。
如果是初级人员来写js,以后 js维护的人会哭死。
所以建议还是模版和ajax混合使用,看场景。同时项目组这种前端技术框架的调整代价是很大的。

web文件上传(二)--使用form还是ajax相关推荐

  1. WEB文件上传之JQuery ajaxfileupload插件使用(二)

    1.JQuery ajaxfileupload插件使用准备 下载地址: http://www.phpletter.com/DOWNLOAD/ 2.原理分析 ajaxfileupload也是利用ifra ...

  2. WEB攻防-通用漏洞文件上传二次渲染.htaccess变异免杀

    目录 知识点 详细点 文件二次渲染 php删除规则 例题 CTF-Web入门-162 CTF-Web入门-163 CTF-Web入门-164 CTF-Web入门-165 CTF-Web入门-166 C ...

  3. web文件上传下载原理浅析

    一.web文件上传浅析 现在有很多Web程序都有上传功能,实现上传功能的组件或框架也很多,如基于java的Commons FileUpload.还有Struts1.x和Struts2中带的上传文件功能 ...

  4. web文件上传(一)--文件上传与json上传区别及方法

    Web文件上传方法总结大全 上传文件与与上传数据区别 上传数据主要指json等简单字符串,上传文件指的是上传word.excel图片等.在上传数据的时候enctype默认为第一个application ...

  5. java web文件上传所需要的commons-fileupload和 commons-io jar包

    文章目录 一.官网获取 二.百度网盘分享 三.分享与热爱 一.官网获取 学习java web文件上传时需要用到两个必备的jar包: commons-fileupload commons-io jar ...

  6. 河南省网络安全高校战队联盟CTF训练营-web文件上传第一期

    文件上传 个人介绍 姓名:飞羽 CTF菜菜一枚 例题来源 ctfhub:https://www.ctfhub.com pwnthebox:https://insider.pwnthebox.com c ...

  7. java web 上传附件_JAVA WEB文件上传步骤

    JAVA WEB文件上传步骤如下: 实现 Web 开发中的文件上传功能,两个操作:在 Web 页面添加上传输入项,在 Servlet 中读取上传文件的数据并保存在本地硬盘中. 1.Web 端上传文件. ...

  8. Django上传文件,制作文件上传按钮,form上传文件

    Django上传文件,制作文件上传按钮,form上传文件 from django.shortcuts import renderfrom django.shortcuts import HttpRes ...

  9. web文件上传-0x00漏洞

    文件上传-0x00漏洞 题目:2016全国大学生信息安全竞赛-web文件上传 原理 0x00漏洞:也称为%00阻断漏洞,0x00漏洞常见于Apache服务器后缀名称解析漏洞,不管文件最后后缀为什么,只 ...

  10. springboot+web文件上传和下载

    一.首先安装mysql数据库,开启web服务器. 二.pom.xml文件依赖包配置如下: <?xml version="1.0" encoding="UTF-8&q ...

最新文章

  1. 【Python-ML】SKlearn库原型聚类KMeans
  2. Spring Controller接收http传值
  3. 四大主流BI工具比较
  4. 某pl/sql培训练习题
  5. 2020年,朋友圈的正确打开方式!
  6. C语言,谁都能看得懂的归并排序
  7. JQuery 之 跳出循环
  8. android电池剩余使用时间,android电池剩余使用时间
  9. VB.net SP1 的兼容性问题
  10. 那么多GAN哪个好?谷歌大脑泼来冷水:都和原版差不多 | 论文
  11. docker build mysql,Docker创建MySQL容器的方法
  12. win11任务栏怎么更换颜色 win11任务栏更换颜色的设置方法
  13. php redis返回值,PHP 中redis常用方法
  14. 轻松学python(一)
  15. 普通程序员如何走出困境
  16. 邢台一中2021年许计勇高考成绩查询,文理Top10!2020邢台高考成绩揭晓...
  17. Okhttp源码分析以及Google Gson解析json数据实例
  18. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) 点对最大值 dp
  19. “深入理解计算机系统”小组学习的Task01-学习日志
  20. Android入门第26天-在Android里自定义Adapter

热门文章

  1. Linux:(ubuntu)命令行下显示方框的问题
  2. 路径规划之RRT类算法简述
  3. 如何做组间差异检验_买套餐送车险,做维修提供代步车,考拉爱车如何实现差异化竞争?...
  4. ruby 数据类型Symbol
  5. logback log4j log4j2 性能实测
  6. Shell脚本的模块化和脚本复用
  7. GitHub增加了代码审查、项目管理等新功能
  8. ad用户和计算机显示2000个,AD 用户属性userAccountControl的详细解释
  9. NoSQL--Redis 2.4--Set
  10. android工具栏设为底层,Android 隐藏底部工具栏