我们是一个 api 服务器,客户请求我们的时候,Content-Type 是 text/plain,请求体却是 json 格式的,让他们改,他们意思是改起来很困难 ,所以我们现在得自己想办法改了,结果发现这还真不是那么好改的 (加个 Rack 中间件?),至少会很别扭,你们怎么看
最粗暴的 在 nginx 代理转发的时候改
另外给路由指定 format: :json 能应对你们的情况么
不改。对接过 Web、Android、iOS、C++,设请求头都没有问题。说困难是他们忽悠你。
你为了这个客户改了,以后对接其他客户或者三方请求,到时不就给自己找麻烦么 如果 api 用的是 grape,我倒是改过某个 api 请求接收 xml 的,在某个 api 方法上面声明如下:
format :xml content_type :xml, "text/xml"
@ad583255925 请告诉我 对方是不是 java
感觉像是比较传统的企业,估计就是 Java
不改就给他们返回 bad request
这是对方在试探你是不是个好忽悠的傻子。
拿别人的错误惩罚自己。
2 楼说得对,不改。这问题,不用商量,你甩给它一份详尽的 API 文档就行,是搞计算机的,就能玩明白,玩不明白就回头重学《计算机网络》
楼上有人 似乎 有点儿 鄙视 Java 啊,说实话在 Java 里改这个玩意儿易如翻掌。 退一步讲,就算是满足你这样的需求,如果你是一个 Java 程序员,也是易如翻掌。 再退一步,我认为 只要不是只会用框架的选手,改这个都是易如翻掌。
结论:你俩一定有一个人 被 框架 或者 库 蒙蔽了双眼
Content-Type 在任何一个 HTTP 库里都是一个可配置的项目,绝对是他们在忽悠你