json、api、post、get请求。

Json

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。

1. "名称/值"对的集合不同语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表 (hash table),键列表(keyed list)等

2. 值的有序列表 多数语言中被理解为数组(array)

API

API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力。

例如你自己写了一个类,这个类里有很多函数,如果别人要用你这个类,但是并不知道每个函数内部是怎么实现的,也就只是知道这个函数的入口参数和返回值或者只知道这个函数是做什么用的,对于用户来说你的这些函数就是API,也就是你写的API,同样,windows api就是微软写的一些函数。

POST和GET请求

一般我们在浏览器输入一个网址访问网站都是GET请求;再FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式。

HTTP定义了与服务器交互的不同方法,其中最基本的四种:GET,POST,PUT,DELETE,HEAD,其中GET和HEAD被称为安全方法,因为使用GET和HEAD的HTTP请求不会产生什么动作。不会产生动作意味着GET和HEAD的HTTP请求不会在服务器上产生任何结果。但是安全方法并不是什么动作都不产生,这里的安全方法仅仅指不会修改信息。

根据HTTP规范,POST可能会修改服务器上的资源的请求。比如CSDN的博客,用户提交一篇文章或者一个读者提交评论是通过POST请求来实现的,因为再提交文章或者评论提交后资源(即某个页面)不同了,或者说资源被修改了,这些便是“不安全方法”。

1、GET请求,请求的数据会附加在URL之后,以?分割URL和传输数据,多个参数用&连接。URL的编码格式采用的是ASCII编码,而不是uniclde,即是说所有的非ASCII字符都要编码之后再传输。

POST请求:POST请求会把请求的数据放置在HTTP请求包的包体中。上面的item=bandsaw就是实际的传输数据。

因此,GET请求的数据会暴露在地址栏中,而POST请求则不会。


2、传输数据的大小

在HTTP规范中,没有对URL的长度和传输的数据大小进行限制。但是在实际开发过程中,对于GET,特定的浏览器和服务器对URL的长度有限制。因此,在使用GET请求时,传输数据会受到URL长度的限制。

对于POST,由于不是URL传值,理论上是不会受限制的,但是实际上各个服务器会规定对POST提交数据大小进行限制,Apache、IIS都有各自的配置。


3、安全性

POST的安全性比GET的高。这里的安全是指真正的安全,而不同于上面GET提到的安全方法中的安全,上面提到的安全仅仅是不修改服务器的数据。比如,在进行登录操作,通过GET请求,用户名和密码都会暴露再URL上,因为登录页面有可能被浏览器缓存以及其他人查看浏览器的历史记录的原因,此时的用户名和密码就很容易被他人拿到了。除此之外,GET请求提交的数据还可能会造成Cross-site request frogery攻击


4、HTTP中的GET,POST,SOAP协议都是在HTTP上运行的

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Vue.js 是一个 JavaScript 框架,使用它可以方便地进行前端开发。vue-resource 是 Vue.js 的一个插件,可以用来发送 HTTP 请求。 关于请求类型,vue-resource 支持 POST 和 GET 两种请求方式。使用方式如下: - GET 请求: ```javascript this.$http.get('your_api').then(response => { // success callback }, response => { // error callback }); ``` - POST 请求: ```javascript this.$http.post('your_api', { // request body }).then(response => { // success callback }, response => { // error callback }); ``` 关于请求格式,vue-resource 支持 form 和 json 两种格式。默认情况下,vue-resource 会将请求体序列化为 application/x-www-form-urlencoded 格式,如果需要发送 json 格式的请求,需要手动设置请求头: ```javascript this.$http.post('your_api', { // request body }, { headers: { 'Content-Type': 'application/json' } }).then(response => { // success callback }, response => { // error callback }); ``` ### 回答2: vue-resource 是 Vue.js 的一个插件,用于发送 HTTP 请求。在 Vue.js 中发送 POST 和 GET 请求可以使用 vue-resource 的形式处理。下面是一个例子,展示如何用 vue-resource 进行 POST 和 GET 请求,发送 Form 表单数据和 JSON 数据。 发送 POST 请求: 1. 使用 vue-resource 的 $http.post() 方法发送 POST 请求。 2. 将要发送的数据作为参数传递给 $http.post() 方法。 3. 如果要发送 Form 表单数据,可以将数据作为对象传递给 $http.post() 方法。 4. 如果要发送 JSON 数据,需要在请求头中设置 Content-Type 为 application/json,并将 JSON 数据作为字符串传递给 $http.post() 方法。 下面是使用 vue-resource 发送 POST 请求的示例: ``` js // 发送 Form 表单数据 this.$http.post('api/url', {param1: value1, param2: value2}).then((response) => { // 处理成功的回调 }).catch((error) => { // 处理失败的回调 }); // 发送 JSON 数据 let jsonData = JSON.stringify({param1: value1, param2: value2}); this.$http.post('api/url', jsonData, {headers: {'Content-Type': 'application/json'}}).then((response) => { // 处理成功的回调 }).catch((error) => { // 处理失败的回调 }); ``` 发送 GET 请求: 1. 使用 vue-resource 的 $http.get() 方法发送 GET 请求。 2. 将要发送的数据作为参数传递给 $http.get() 方法。 3. 参数可以直接拼接在 URL 中,也可以作为一个对象传递给 $http.get() 方法。 下面是使用 vue-resource 发送 GET 请求的示例: ``` js // 直接拼接参数在 URL 中 this.$http.get('api/url?param1=value1&param2=value2').then((response) => { // 处理成功的回调 }).catch((error) => { // 处理失败的回调 }); // 作为参数对象传递 this.$http.get('api/url', {params: {param1: value1, param2: value2}}).then((response) => { // 处理成功的回调 }).catch((error) => { // 处理失败的回调 }); ``` 以上就是使用 vue-resource 发送 POST 和 GET 请求时,发送 Form 表单数据和 JSON 数据的方法。 ### 回答3: Vue-resource是Vue.js官方推荐的一个用于处理网络请求的插件。使用Vue-resource可以很方便地进行postget请求,并且可以以form和json的形式进行数据传输。 首先,我们来讲解如何进行post请求。在Vue组件中,可以通过Vue-resource的$http对象来发送post请求。要发送一个form形式的post请求,可以使用`this.$http.post(url, formData)`方法,并将form数据作为第二个参数传递进去。 例如,假设我们要向服务器端发送一个form形式的post请求,可以通过以下代码实现: ``` this.$http.post('/api/users', this.formData).then(response => { console.log(response.body); }, error => { console.error(error); }); ``` 其中,`/api/users`是请求的url,`this.formData`是包含form数据的对象。通过`then`方法可以处理请求成功和失败的情况,并且可以从`response`对象中获取到服务器返回的数据。 下面我们来看一下如何进行get请求。同样地,在Vue组件中,可以通过Vue-resource的$http对象来发送get请求。要发送一个json形式的get请求,可以使用`this.$http.get(url, {params: jsonData})`方法,并将json数据作为`params`属性传递进去。 举一个例子,如果我们需要向服务器端发送一个json形式的get请求,可以按照以下方式实现: ``` this.$http.get('/api/users', {params: {name: 'Alice', age: 25}}).then(response => { console.log(response.body); }, error => { console.error(error); }); ``` 在这个例子中,`/api/users`是请求的url,`{name: 'Alice', age: 25}`是需要传递给服务器的json数据。同样地,在`then`方法中可以处理请求成功和失败的情况,并且从`response`对象中获取到服务器返回的数据。 总之,使用Vue-resource可以轻松地发送postget请求,并且可以自由选择传递form或json形式的数据。以上就是关于如何使用Vue-resource进行postget请求的简要说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值