相关疑难解决方法(0)

自定义HTTP标头:命名约定

我们的一些用户要求我们在我们发送请求的HTTP标头中包含与其帐户相关的数据,甚至是我们从API获得的响应.在命名,格式化等方面添加自定义HTTP标头的一般惯例是什么?

另外,您可以随意发布您在网上偶然发现的任何智能用途; 我们正试图用最好的目标来实现这个目标:)

http http-headers

1051
推荐指数
6
解决办法
34万
查看次数

在HTTP 202中使用Location头是否符合RFC标准?

我与我的同事讨论了在202 Accepted响应中使用Location头的一个很好的概念.

故事从这里开始分析PHP header()函数的行为.有趣的摘录:

第二个特例是"Location:"标题.它不仅这个头发送回浏览器,但是除非201或3xx状态代码已经被设置也返回重定向(302)状态代码到浏览器.

它们未在此默认行为中包含202状态代码.看起来他们并不期望202响应有一个位置,事实上:

header("HTTP/1.1 202");
header("Location: http://example.com");
Run Code Online (Sandbox Code Playgroud)

将客户端重定向到位置URL.当然,也可以改变与header()函数的第三个参数,但一下就吸引了我的注意力被这种行为:为什么他们了解,默认202预计不会举行Location头?

然后我查看RFC,寻找202状态的官方含义.有趣的摘录:

返回此响应的实体应该包括请求的当前状态的指示,以及指向状态监视器的指针或用户可以期望满足请求的某些估计.

它没有明确地引用位置标头,就像之前(在相同的RFC文档中)201响应一样.这可能是PHP人员理解202响应不应该保持Location头的原因.指针会被解释为Location头还是PHP家伙做出了错误的假设?如果标准允许Location头有202响应:不应该像201响应定义更明确的官方文档?

最后,我回顾了最新的RFC版本,并发现编辑方面的一些变化:

与此响应发送表示应该描述请求的当前状态和(或嵌入)点状态监视器,一个当所述请求将被兑现的估计提供给用户.

同样,没有明确的假设指向 Location头.

简而言之,经过上述修订后:我是否使用带有202响应的Location标头符合RFC?

http rfc http-status-codes http-headers

19
推荐指数
3
解决办法
4344
查看次数

REST API 单个请求 - 多个响应

我正在 JAX-RS 2.0、JDK 8 中编写 REST API 以满足以下要求

POST API /server/fileUpload/(多部分表单数据),我需要在此发送一个大.AI(Adobe Illustrator)文件。

服务器获取文件并返回状态 202(已接受),确认文件传输成功。(从端点到服务器)

现在在服务器上,我使用 Java + Imagemagik 将 .AI 文件(20-25 MB 文件)转换为小 JPG 缩略图,放置在 Apache HTTP 服务器上并共享位置(例如http://happyplace/thumbnail0987.jpg

现在,第二个响应应来自服务器,状态为 200 OK 且缩略图 URL

使用一个 REST API 可行吗?(异步/类似)

或者我应该将其拆分为 2 个 API 调用,请提出建议

java rest jax-rs imagemagick

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

http ×2

http-headers ×2

http-status-codes ×1

imagemagick ×1

java ×1

jax-rs ×1

rest ×1

rfc ×1