您现在的位置: 365建站网 > 365学习 > HTTP请求415错误 – 不支持的媒体类型(Unsupported media type)的解决方法

HTTP请求415错误 – 不支持的媒体类型(Unsupported media type)的解决方法

文章来源:365jz.com     点击数:6673    更新时间:2017-12-08 10:58   参与评论

遇到几次使用Idhttp 进行接口请求的时候报错  http 415 unsupported media type 的错误。最后的解决办法几乎都是一样的。

设置Idhttp.ContentType 的类型。如 接口要求使用Post方式Json格式的串则设置:

 Idhttp.ContentType = 'application/json'.
 

HTTP请求415错误 – 不支持的媒体类型(Unsupported media type)

通常有以下情况:

1:检查你的 http 请求头信息,比如 因为 User-Agent 被服务器设置 拒绝请求了;

    比如你写的的爬虫,就很有可能因为没有伪装成浏览器,被拒绝请求

    User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。

2:查看你的 http 请求方法,以及服务器端的设置

   比如:有一个 强制用 post 请求的接口,你是不是用了非post 请求

3:post 请求参数设置,是不是必须的,json 格式

   比如下面,两段代码,

  如下 json参数,body
 

import requests
import json


payload={"userName":"names","userCode":"123456","phoneNum":"7800","regPic":"picData"}
headers={'content-type': 'application/json'}
burl="http://httpbin.org/post"

r=requests.post(burl, data=json.dumps(payload), headers=headers)

print r.text

 

 

  如下 form 格式 参数

import requests
import json


payload={"userName":"names","userCode":"123456","phoneNum":"7800","regPic":"picData"}
headers={'content-type': 'application/json'}
burl="http://httpbin.org/post"

r=requests.post(burl, data=payload, headers=headers)

print r.text


  


如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛


发表评论 (6673人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换图片
最新评论
------分隔线----------------------------