该错误通常出现在请求的内容类型与服务器所支持的媒体类型不匹配的情况下。在请求中,如果请求的内容类型是 JSON,则服务器无法处理该请求,因为服务器仅支持 XML 类型的媒体类型。如果请求的内容类型是 XML,则服务器可以处理该请求,并将响应发送回客户端。因此,为了确保服务器能够正确处理请求,客户端必须确保请求中包含正确的媒体类型。
Redirect 临时重定向请求 308 Permanent Redirect 永久重定向请求 这几个重定向的区别:301、302 只支持 GET 请求,如果是 POST 请求,重定向后会使用 GET...请求且 Body 数据会丢失 307、308 支持 POST 请求,在 POST 重定向的时候会带上原来请求的 body 再请求新的地址,body 数据不会丢失 302、307 是临时重定向, 301...错误请求,一般用来表示请求参数异常,比如请求的某一个参数不能为空,但实际请求是空 401 Unauthorized,未授权,资源需要授权或登录,而用户没有登录或者没有提供访问所需的 Token 等 403...xml 的响应,但是服务器端只支持 JSON 响应 408 Request Timeout, 请求处理超时 409 Conflict,请求资源冲突,常发生在 PUT 更新资源信息时发生,比如更新时指定资源的...415 Unsupported Media Type,不支持的媒体类型或不支持的编码,比如服务器只支持处理 JSON 请求,但是请求是 xml 格式 5xx 5xx 一般表示服务端错误 500 Internal
(not acceptable)- 服务端不支持所需表示 409 (conflict)- 通用冲突 412 (Precondition Failed)- 前置条件失败(如执行条件更新时的冲突) 415...服务当前无法处理请求 PUT 不安全但幂等 用客户端管理的实例号创建一个资源 通过替换的方式更新资源 如果未被修改,则更新资源(乐观锁) 200 (OK)- 如果已存在资源被更改 201 (created...前置条件失败(如执行条件更新时的冲突) 415 (unsupported media type)- 接受到的表示不受支持 500 (internal server error)- 通用错误响应 503...例如文本资源可以采用html、xml、json等格式,图片可以使用PNG或JPG展现出来。...以github为例,请求某组织资源的json格式的表述形式: ? 假如github也能够支持xml格式的表述格式,那么结果就是这样的: ?
(not acceptable)- 服务端不支持所需表示 409 (conflict)- 通用冲突 412 (Precondition Failed)- 前置条件失败(如执行条件更新时的冲突) 415...服务当前无法处理请求 PUT 不安全但幂等 用客户端管理的实例号创建一个资源 通过替换的方式更新资源 如果未被修改,则更新资源(乐观锁) 200 (OK)- 如果已存在资源被更改 201 (created...前置条件失败(如执行条件更新时的冲突) 415 (unsupported media type)- 接受到的表示不受支持 500 (internal server error)- 通用错误响应 503...例如文本资源可以采用html、xml、json等格式,图片可以使用PNG或JPG展现出来。...看一个github为例子,请求某组织资源的json格式的表述形式: ? 转xml格式的表述格式: ?
4xx:客户端错误 406:Not acceptable,这表示API消费者请求的表述格式并不被Web API所支持,并且API不会提供默认的表述格式。...例如请求的媒体类型是application/xml,但是Web API仅支持application/json类型,并且API不会将application/json作为默认格式提供; 409:Conflict...415:Unsupported media type,与406正好相反,有一些请求必须带着数据发往服务器,这些数据都属于特定的媒体类型,如果API不支持该媒体类型格式,415就会被返回。...[FromBody]*接收,服务端api是不会接收数据,便会返回415 Unsupported Media Type-不支持的媒体类型。...服务器已经懂得了实体的Content Type的媒体类型,也就是说415状态码肯定不合适; 此外,实体的语法也没有问题,所以400也不合适。 但是服务器仍然无法处理这个实体数据,这时就可以返回422。
415 - Unsupported media type,这个和406正好返回来,比如说我向服务器提交数据的media type是xml的,而服务器只支持json,那么就会返回415 422 - Unprocessable...看一下当前的情况,请求的Accept Header为application/json时: ? 请求的Accept Header为application/xml时: ? 它们返回的都是json格式的。...因为服务器(项目)现在不支持xml,所以返回了默认的json格式,但严格来说,这样做不正确,所以需要处理一下。 在Startup里,ConfigureServices方法: ?...不指定Accept Header的情况下就返回默认的json格式: ? 下面,为项目添加Xml输出格式的支持: ? 再试试: ? 这时就成功的返回了xml。...支持输入其它类型的Content-Type 之前讲过如何返回xml的格式, 下面介绍一下如何使用xml格式进行请求, 首先在Startup.cs里面添加这个: ?
(url=post_url, data=data, headers=headers) 获取当前请求的ip和端口 host_ip, host_port = self.request.META.get("...地址是%s"%ip) http://10.254.30.27/1 self.kwargs[‘pk’] # 可以拿到后边的 1 补充知识:django 使用requests请求相关接口 1、如果是get...2、如果是post请求接口,并且需要带相关参数的话,可以借鉴下面的代码: import requests from json import dumps from django.http import...(2)、如果需要在post请求底下加相关请求头的话,可以借鉴下面的代码: import requests from json import dumps from django.http import...(response.text, safe=False) 这里如果response的状态码报415错误的话,即HTTP请求415错误 – 不支持的媒体类型(Unsupported media type),
注意: 如果客户端发送格式错误的内容,则访问 request.data 可能会引发 ParseError 。...如果客户端发送的请求内容无法解析(不同于格式错误),则会引发 UnsupportedMediaType 异常,默认情况下会被捕获并返回 415 Unsupported Media Type 响应。...2、内容协商 该请求公开了一些属性,允许你确定内容协商阶段的结果。这使你可以实施一些行为,例如为不同媒体类型选择不同的序列化方案。...这些错误源于 authenticator 作为一个标准的 AttributeError ,为了防止它们被外部属性访问修改,有必要重新提升为不同的异常类型。...等),如果没有提供媒体类型,则返回空字符串。
开始把服务发布到某个地方,然后开始与 REST 服务进行交互。返回的内容可能是 XML、JSON 格式,或者更确切地说是像 Atom 或自定义 MIME 类型等超媒体格式。...虽然一般建议尽可能重用现有的格式,但是对正确设计的媒体类型正在变得越来越宽容。...接下来,当一切就绪时,使用基于超媒体的 MIME 类型,这样就可以充分享受 REST 的好处了。 4. 动词 动词是用来与服务器资源交互的方法或操作。...正如我们在 POST 部分中讨论的那样,通常不会出现这种情况。但是如果客户端能够控制服务器端信息空间,那么这种操作也是合理的。...这是推荐使用 PATCH 而非 POST 的原因,尽管 POST 可以用于任何事情。IETF 发布了 RFC 文档,定义用于 PATCH 操作的 XML 和 JSON。
资源的表述(Representation) 即资源格式,是 HTML、XML、JSON、纯文本、图片等等,可以用各种各样的格式来表述你获取到的资源。...REST 特点 REST 通常基于使用HTTP,URI,和XML以及HTML这些现有的广泛流行的协议和标准,每一种 URI 代表一种资源。 REST 通常使用JSON数据格式。...,但是还是建议如果是一个集合,就使用复数形式。...415 Unsupported Media Type:客户端要求的返回格式不支持。比如,API 只能返回 JSON 格式,但是客户端要求返回 XML 格式。...正确的做法应该是在错误时,返回对应错误状态码,并将错误信息返回: HTTP/1.1 400 Bad Request Content-Type: application/json { "error"
, 第二个link则告诉客户端如何去更新该post....JSON和XML并没有如何展示link的概念....但是实际上这两个Model是对Country这个资源的不同表述,使用application/json实际上是错误的。...接下来使用原来的POST方法的媒体类型: 就会进入原来的POST方法: 使用另一个媒体类型,就会进入另外一个方法,就不贴图了是好用的。...因为,就看上一个截图,这个方法接收的格式是json,但是如果我想要也支持接收xml,就直接在数组里添加另一个xml的媒体类型就可以了。
, 第二个link则告诉客户端如何去更新该post....JSON和XML并没有如何展示link的概念....但是实际上这两个Model是对Country这个资源的不同表述,使用application/json实际上是错误的。...接下来使用原来的POST方法的媒体类型: ? 就会进入原来的POST方法: ? 使用另一个媒体类型,就会进入另外一个方法,就不贴图了是好用的。...因为,就看上一个截图,这个方法接收的格式是json,但是如果我想要也支持接收xml,就直接在数组里添加另一个xml的媒体类型就可以了。
2.资源的表述(Representation) 即资源格式,是 HTML、XML、JSON、纯文本、图片等等,可以用各种各样的格式来表述你获取到的资源。...REST 特点 REST 通常基于使用 HTTP , URI ,和 XML 以及 HTML 这些现有的广泛流行的协议和标准,每一种 URI 代表一种资源。 REST 通常使用 JSON 数据格式。...,但是还是建议如果是一个集合,就使用复数形式。...415 Unsupported Media Type:客户端要求的返回格式不支持。比如,API 只能返回 JSON 格式,但是客户端要求返回 XML 格式。...正确的做法应该是在错误时,返回对应错误状态码,并将错误信息返回: HTTP/1.1 400 Bad Request Content-Type: application/json { "error"
开始把服务发布到某个地方,然后开始与 REST 服务进行交互。返回的内容可能是 XML、JSON 格式,或者更确切地说是像 Atom 或自定义 MIME 类型等超媒体格式。...虽然一般建议尽可能重用现有的格式,但是对正确设计的媒体类型正在变得越来越宽容。...接下来,当一切就绪时,使用基于超媒体的 MIME 类型,这样就可以充分享受 REST 的好处了。 4. 动词 动词是用来与服务器资源交互的方法或操作。...正如我们在 POST 部分中讨论的那样,通常不会出现这种情况。但是如果客户端能够控制服务器端信息空间,那么这种操作也是合理的。...这是推荐使用 PATCH 而非 POST 的原因,尽管 POST 可以用于任何事情。 IETF 发布了 RFC 文档,定义用于 PATCH 操作的 XML 和 JSON。
注意:图片上传必须通过post方式提交多媒体类型的form表单,其他方式,包括get都不允许提交多媒体的form,否则会报500错误(The current request is not a multipart...这时在整个页面完整信息进行提交保存时,form表单中只包含图片的url字符串和其他业务信息,这个form就不需要指定多媒体类型的属性了,没有了多媒体类型的属性的form就可以不局限于只运行post提交了...如果不按照上面的格式写,SpringMVC在配置接收JSON类型参数时就会报400错误。...中用PUT表示更新,但是如果是多媒体表单提交即使你做了PUT的相关设置也是无效的,只要是多媒体form提交只认POST类型,因此前面的【editItem.jsp】我们取消了多媒体form,这里的方法的MultipartFile...2.层次化的系统: 在一个REST系统中,客户端并不会固定地与一个服务器打交道。 3.无状态: 在一个REST系统中,服务端并不会保存有关客户的任何状态。
而REST的核心原则是将你的API拆分为逻辑上的资源。这些资源通过http被操作(GET ,POST,PUT,DELETE)。 那么我应该如何拆分出这些资源呢?...如果是这样的话你还有另外一个问题:你的http请求中的media类型是应该和accept 头同步还是和url?...注意使用json传输的时候,要求请求头里面加入:Content-Type:applicatin/json.否则抛出415异常(unsupported media type)。...如果可能500系列的错误也应该如此。json格式的错误应该包含以下信息:一个有用的错误信息,一个唯一的错误码,以及任何可能的详细错误描述。...415 unsupported media type - 请求类型错误。 422 unprocessable entity - 校验错误时用。
第五列 Size:从服务器下载的文件和请求的资源大小。如果是从缓存中取得的资源,则该列会显示 from cache。 第六列 Time:发起请求到获取响应所用的总时间。...Content-Type:也叫互联网媒体类型(Internet Media Type)或者 MIME 类型,在 HTTP 协议消息头中,它用来表示具体请求中的媒体类型信息。.../form-data 表单文件上传 application/json 序列化 JSON 数据 text/xml XML 数据 在爬虫中,如果要构造 POST 请求,需要使用正确的 Content-Type...在爬虫中,我们可以根据状态码来判断服务器响应状态,如状态码为 200,则证明成功返回数据,再进行进一步的处理,否则直接忽略。表中列出了常见的错误代码及错误原因。...请求实体过大,超出服务器的处理能力 414 请求 URI 过长 请求网址过长,服务器无法处理 415 不支持类型 请求格式不被请求页面支持 416 请求范围不符 页面无法提供请求的范围 417 未满足期望值
struts2: 玩转 rest-plugin 一文中,学习了用struts2开发restful service的方法,发现用c#以post方式调用时各种报错,但java、ajax,包括firefox...先给出rest service中的这个方法: 1 // POST /orders 2 public HttpHeaders create() throws IOException,...("orders/"); 13 } 14 return null; 15 } 代码不复杂,post一段String过来(xml/json/html格式均可),自动映射成...Order对象的实例model,然后根据请求HttpHeader中的Content-Type,如果是xml(application/xml),则返回model对应的xml,如果是json(application.../json),则返回model对应的json,其它则返回页面 c#的调用代码: 1 static string PostDataByWebClient(String postUrl, String paramData
领取专属 10元无门槛券
手把手带您无忧上云