OPTIONS

返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送'*'的请求来测试服务器的功能性。

HEAD

向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。

GET

向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中。

POST

向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。

PUT

向指定资源位置上传其最新内容。

DELETE (后台需要实现逻辑)

请求服务器删除Request-URI所标识的资源。(后台需要有实现逻辑)

TRACE

回显服务器收到的请求,主要用于测试或诊断。

CONNECT

HTTP/1.1协议中预

MVC4 webapi实例  post delete put get 就当增删改查来用吧

 public class ComplexTypeValuesController : ApiController
{ static readonly MoviesRepository repository = new MoviesRepository(); // GET api/values
public IEnumerable<Movie> Get()
{
return repository.Movies;
} // GET api/values/5
public IHttpActionResult Get(int id)
{
Movie repMovie = repository.Movies.Where(m => m.ID == id).SingleOrDefault();
if (repMovie == null)
return NotFound();
else
return Ok(repMovie);
} /*
Post this JSON object will cause cross-field validation error from IValidatableObject: {
"Title": "Fifty Shades of Grey",
"ReleaseDate": "2015-02-13T00:00:00",
"Genre": "Family",
"Price": 15.99,
"Rating": "R",
"Stars": 5
} */
// POST api/values
public IHttpActionResult Post(Movie movie)
{
if (!ModelState.IsValid)
return BadRequest(ModelState); int? maxId = (from m in repository.Movies
orderby m.ID descending
select m.ID).FirstOrDefault(); Movie newMovie = new Movie
{
ID = (maxId != null) ? (int)maxId + : ,
Title = movie.Title,
ReleaseDate = movie.ReleaseDate,
Genre = movie.Genre,
Rating = movie.Rating,
Price = movie.Price
}; repository.Movies.Add(newMovie);
return Ok(newMovie);
} // PUT api/values/5
public IHttpActionResult Put(int id, Movie movie)
{
if (!ModelState.IsValid)
return BadRequest(ModelState); var repMovie = (from m in repository.Movies
where m.ID == id
select m).SingleOrDefault(); if (repMovie == null)
return NotFound();
else
{ repMovie.Title = movie.Title;
repMovie.ReleaseDate = movie.ReleaseDate;
repMovie.Genre = movie.Genre;
repMovie.Rating = movie.Rating;
repMovie.Price = movie.Price;
return Ok(repMovie);
} } // DELETE api/values/5
public IHttpActionResult Delete(int id)
{
var repMovie = (from m in repository.Movies
where m.ID == id
select m).SingleOrDefault(); if (repMovie == null)
return NotFound();
else
{
repository.Movies.Remove(repMovie);
return Ok();
}
}
}

js 调用部分:

  ///////////////////////////////
// Simple Type $("#GetAllRequest").click(function (e) { $.ajax({
url: "/api/values",
type: "GET",
dataType: "json" // aka Accept
})
.done(function (data, textStatus, jqXHR) {
$('#GetAlloutput').html(data);
})
.fail(function (jqXHR, textStatus, errorThrown) {
$('#GetAlloutput').html('Bummer: there was an error: ' + textStatus);
});
}); $("#GetIdRequest").click(function (e) { $.ajax({
url: "/api/values/42",
type: "GET",
dataType: "json" // aka Accept
})
.done(function (data, textStatus, jqXHR) {
$('#GetIdoutput').html(data);
})
.fail(function (jqXHR, textStatus, errorThrown) {
$('#GetIdoutput').html('Bummer: there was an error: ' + textStatus);
}); }); $("#PostRequest").click(function (e) { $.ajax({
url: "/api/values",
type: "POST",
dataType: "json", // aka Accept
contentType: "application/json",
data: "\"myData\""
})
.done(function (data, textStatus, jqXHR) {
$('#Postoutput').html(data);
})
.fail(function (jqXHR, textStatus, errorThrown) {
$('#Postoutput').html('Bummer: there was an error: ' + textStatus);
});
}); $("#PutRequest").click(function (e) { $.ajax({
url: "/api/values/42",
type: "PUT",
dataType: "json", // aka Accept
contentType: "application/json",
data: "\"myData\""
})
.done(function (data, textStatus, jqXHR) {
$('#Putoutput').html(data);
})
.fail(function (jqXHR, textStatus, errorThrown) {
$('#Putoutput').html('Bummer: there was an error: ' + textStatus);
}); }); $("#DeleteRequest").click(function (e) { $.ajax({
url: "/api/values/42",
type: "DELETE",
dataType: "json", // aka Accept
contentType: "application/json"
})
.done(function (data, textStatus, jqXHR) {
$('#Deleteoutput').html(data);
})
.fail(function (jqXHR, textStatus, errorThrown) {
$('#Deleteoutput').html('Bummer: there was an error: ' + textStatus);
});
});

【http】http/1.1 八种请求方式的更多相关文章

  1. http 中定义的八种请求的介绍

    在http1.1协议中,共定义了8种可以向服务器发起的请求(这些请求也叫做方法或动作),本文对这八种请求做出简要的介绍: 1.PUT:put的本义是推送 这个请求的含义就是推送某个资源到服务器,相当于 ...

  2. Ajax中的get和post两种请求方式的异同

    Ajax中我们经常用到get和post请求.那么什么时候用get请求,什么时候用post方式请求呢? 在做回答前我们首先要了解get和post的区别.   1. get是把参数数据队列加到提交表单的A ...

  3. HttpwebClient的四种请求方式

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷.      本文旨在发布代码,供自己参考,也供大家参考,谢谢. 正题: Ht ...

  4. Ajax的get和post两种请求方式区别

    Ajax的get和post两种请求方式区别 (摘录):http://ip-10000.blog.sohu.com/114437748.html 解get和post的区别. 1. get是把参数数据队列 ...

  5. SpringMVC的REST风格的四种请求方式

    一. 在HTTP 协议里面,四个表示操作方式的动词:GET.POST.PUT.DELETE. ·它们分别对应四种基本操作: 1.GET  ====== 获 取资源 2.POST ======新建资源 ...

  6. 【转载】Redis的Java客户端Jedis的八种调用方式(事务、管道、分布式…)介绍

    转载地址:http://blog.csdn.net/truong/article/details/46711045 关键字:Redis的Java客户端Jedis的八种调用方式(事务.管道.分布式…)介 ...

  7. 【spring springmvc】这里有你想要的SpringMVC的REST风格的四种请求方式

    概述 之前的文章springmvc使用注解声明控制器与请求映射有简单提到过控制器与请求映射,这一次就详细讲解一下SpringMVC的REST风格的四种请求方式及其使用方法. 你能get的知识点 1.什 ...

  8. HTTP协议八种请求类型介绍

    HTTP 协议中共定义了八种方法或者叫“动作”来表明对 Request-URI 指定的资源的不同操作方式,具体介绍如下: OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法.也可以利用向W ...

  9. jQuery中的Ajax几种请求方式

    1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. url (String) : 请求的HTML页的URL地址. data (M ...

随机推荐

  1. Shell学习笔记 - 正则表达式

    一.正则表达式是什么? 正则表达式是用于描述字符排列和匹配模式的一种语法规则.它主要用于字符串的模式分割.匹配.查找及替换操作. 二.正则表达式与通配符 1. 正则表达式 用来在文件中匹配符合条件的字 ...

  2. codeforces 675A A. Infinite Sequence(水题)

    题目链接: A. Infinite Sequence time limit per test 1 second memory limit per test 256 megabytes input st ...

  3. python 3.3.2 爬虫记录

    网络上大部分关于python爬虫的介绍以及代码讲解,都用的是python2.7或以下版本,用python3.x版本的甚少. 在python3.3.2版本中,没有urllib2这个库,也没有cookie ...

  4. hdu 4117 GRE Words AC自动机DP

    题目:给出n个串,问最多能够选出多少个串,使得前面串是后面串的子串(按照输入顺序) 分析: 其实这题是这题SPOJ 7758. Growing Strings AC自动机DP的进阶版本,主题思想差不多 ...

  5. 拓展开源库SwipeToLoadLayout实现EmptyView和Empty时自动禁用LoadMore

    Android应用开发中,经常需要使用到界面的下拉刷新和上拉加载,在support v7之前,一般都是用ListView去做列表视图,而ListView对EmptyView是提供支持的,并且有许多开源 ...

  6. jQuery中的选择器<思维导图>

    选择器是jQuery的重要组成部分,在jQuery中,对事件处理.遍历DOM和Ajax操作都依赖于选择器.如果能熟练地使用选择器,不仅能简化代码,而且可以达到事半功倍的效果. 下面是关于jQuery中 ...

  7. Android webkit 事件传递流程详解

    前言:基于android webview 上定制自己使用的可移植浏览器apk,遇到好多按键处理的问题.所以索性研究了一下keyevent 事件的传递流程. frameworks 层 keyevent ...

  8. oledb 操作 excel

    oledb excel http://wenku.baidu.com/search?word=oledb%20excel&ie=utf-8&lm=0&od=0 [Asp.net ...

  9. (转)RabbitMQ 集群与高可用配置

    集群概述 环境 配置步骤 集群概述 通过 Erlang 的分布式特性(通过 magic cookie 认证节点)进行 RabbitMQ 集群,各 RabbitMQ 服务为对等节点,即每个节点都提供服务 ...

  10. (转)Yale CAS + .net Client 实现 SSO(5)

    第一部分:安装配置 Tomcat 第二部分:安装配置 CAS 第三部分:实现 ASP.NET WebForm Client 第四部分:实现基于数据库的身份验证 第五部分:扩展基于数据库的身份验证 1. ...