我正在开发一个ruby项目,该项目涉及使用RESTClient来访问API。 API为特定结果返回400 HTTP状态代码,并附带响应消息(A JSON响应)。
但是当我检查我的电话响应时:
response = RESTClient.post(...) {
logger.info response.to_s
}
我正在获取Proxy Server 400页面html:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
</body></html>
这不是我所期待的。
请问可能出错?
此外,DEV和TEST环境的行为也不同。在DEV环境中,它在测试时给出了JSON,我得到了这个问题。
感谢。
答案 0 :(得分:0)
如果这是您的API,您可以以JSON格式启用任何请求的响应。只需将其添加到您的基本API控制器:
before_filter :default_request_format
private
def default_request_format
request.format = :json
end
如果这不是您的API,您应该使用JSON内容类型指定Accept
标头。