当前位置: 首页 > news >正文

java和javascript的区别,HTTP请求的方法,GET 与 POST

java和javascript的区别

首先,这两个家伙没有任何的血缘关系,java是是由Sun 公司于1995年5月推出的,而javascript是于1995年由Netscape公司设计实现而成的,由于Netscape公司与Sun公司合作,Netscape高层希望它看上去能够像Java,因此取名为JavaScript。

其次,这两个家伙的本质也不一样,java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,即使是开发简单的程序,也必须设计对象;而JavaScript是一种直译式脚本语言,它本身提供了非常丰富的内部对象供设计人员使用。

并且它们的执行方式也是不一样的,Java是介于解释型和编译型语言之间的一种语言,java的源代码在传递到客户端执行之前,必须经过编译,通过相应平台上的解释器,实现独立于某个特定的平台编译代码的束缚。JavaScript是一种解释性编程语言,其源代码在发往客户执行之前不需经过编译,而是将文本格式的字符代码发送给客户编由浏览器解释执

再其次两者的用途也不一样,java广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网等,而Javascript的用途是:1.嵌入动态文本于HTML页面;2.对浏览器事件做出响应; 3.读写HTML元素;4.在数据被提交到服务器之前验证数据;5.检测访客的浏览器信息; 6.控制cookies,包括创建和修改等。

HTTP请求的方法:

HTTP/1.1协议中共定义了八种方法(有时也叫“动作”),来表明Request-URL指定的资源不同的操作方式
HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法

在这里插入图片描述

GET 与 POST

GET
向服务器请求数据,获取资源,在大部分网络请求中,GET方法非常常见,并且它具有幂等性。
GET请求没有请求体,对于GET请求的请求参数在URL后面加上一个"?“的后面,参数以key=value的形式。参数与参数之间使用”&"进行连接。
GET请求是通过URL传输参数的,所以GET请求可以传输的参数是有限的。
POST
用于向表单提交数据,传送的数据放在请求体中。
在POST请求中,请求参数放在请求体中,服务器会根据POST请求体中的参数创建一个页面,然后返回给客户端。POST不具有幂等性。
POST 与 GET 区别
作用不同:GET 用于获取资源,而 POST 用于传输实体主体。
参数位置不一样:GET 和 POST 的请求都能使用额外的参数,但是 GET 的参数是以查询字符串出现在 URL 中,而 POST 的参数存储在实体主体中。但是并不是 POST 参数存储在实体主体中就认为它的安全性更高,我们可以通过一些抓包工具如(Fiddler)查看。
在URL 只支持 ASCII 码,因此 GET 的参数中如果存在中文等字符就需要先进行编码。例如 中文 会转换为 %E4%B8%AD%E6%96%87,而空格会转换为 %20。POST 支持标准字符集。

安全性:安全的 HTTP 方法不会改变服务器状态,也就是说它只是可读的。 GET 方法是安全的,而 POST 却不是,因为 POST 的目的是传送实体主体内容,这个内容可能是用户上传的表单数据,上传成功之后,服务器可能把这个数据存储到数据库中,因此状态也就发生了改变。
安全的方法除了 GET 之外还有:HEAD、OPTIONS。
不安全的方法除了 POST 之外还有 PUT、DELETE。

相关文章:

  • 虹软人脸活体检测获取sha256
  • spring boot bilibili
  • Android studio将一个项目作为module导入另一个项目
  • 一个activity显示另一个activity,LocalActivityManager实例化不是通过ActivityGroup,
  • sp SharedPreferences的基本用法
  • 新建一直循环子线程,怎样关闭循环子线程,contains a path separator
  • 定时器,android Module之间数据传递
  • CalledFromWrongThreadException
  • 当前线程睡眠object not locked by thread before wait()Handler.postDelayDialog AlertDialog 禁止返回按键Ale
  • Android 文件下载
  • 每次编译APP,都需要run两次,APP才自动启动
  • 新建文件夹,复制文件,glide保存文件android 获取sdcard,获取data.data 目录file.mkdirs() file.mkdir()Device File Expl
  • intellij idea 使用技巧通android studio
  • pom.xml Cannot resolve mysql:mysql-connector-java:8.0.25
  • SpringBoot构建电商基础秒杀项目
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • Debian下无root权限使用Python访问Oracle
  • Effective Java 笔记(一)
  • es6
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Spring技术内幕笔记(2):Spring MVC 与 Web
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 对话 CTO〡听神策数据 CTO 曹犟描绘数据分析行业的无限可能
  • 汉诺塔算法
  • 来,膜拜下android roadmap,强大的执行力
  • 前端攻城师
  • 如何使用 JavaScript 解析 URL
  • 如何用vue打造一个移动端音乐播放器
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 微信开源mars源码分析1—上层samples分析
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 你对linux中grep命令知道多少?
  • ​secrets --- 生成管理密码的安全随机数​
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • #define用法
  • #pragam once 和 #ifndef 预编译头
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • (二)丶RabbitMQ的六大核心
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .Net mvc总结
  • .Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化
  • .NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式(二)...
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件
  • .NET处理HTTP请求
  • .NET序列化 serializable,反序列化
  • @RestController注解的使用
  • [20170713] 无法访问SQL Server
  • [ACTF2020 新生赛]Upload 1
  • [ActionScript][AS3]小小笔记
  • [Android Studio] 开发Java 程序
  • [C#]获取指定文件夹下的所有文件名(递归)
  • [C/C++] -- 二叉树