【问题标题】:Can I serve up a content-length from an Xpage Rest Service我可以从 Xpage Rest 服务中提供内容长度吗
【发布时间】:2015-01-21 22:50:44
【问题描述】:

我在 Xpage 中编写了 JSON Rest Service。工作正常。我们的外部程序员将使用 RPG 在 iSeries 上使用它。

我们已经使用完全相似的服务成功地使用了 400 上的少数休息服务。

外部程序员想要使用发送“内容长度”标头。我在设计元素中找不到任何参数来添加它。也许是不可能的。

【问题讨论】:

  • 为什么不以编程方式添加它?
  • 是时候用有能力的java程序员来代替“外部程序员”了。 content-length 的典型用法是显示下载进度条。使用内容长度进行验证是一种不好的做法。校验和或数字签名是验证下载的标准方法。
  • 既然我们使用的是 JSON,他就不能通过搜索 JSON 的结尾来验证吗?我很好奇,为什么使用校验和进行验证是一种不好的做法?
  • 我试图消除您从“外部程序员”那里收到的借口 这是简单的 rpg 调用 java 来使用 web 服务。 java 将 web 服务响应存储在 qtemp 中。 rpg 读取 qtemp 文件。就是这样完成的。
  • 使用校验和验证是 CPU 密集型的,如果它符合您的要求。

标签: json xpages xpages-extlib


【解决方案1】:

content-length 是属于底层响应对象的标头。所以你必须使用ExternalContext来获取Response,你使用setHeader(java.lang.String, java.lang.String)方法来设置content-length。

这适用于所有风格,您需要在“渲染响应之前”事件中捕获响应。

当您选择使用服务 bean 编写 custom service 时,会更容易一些,因为响应对象是作为参数传递的。

告诉我们进展如何!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-15
    • 2017-10-12
    • 2010-12-15
    • 1970-01-01
    • 2015-11-05
    • 1970-01-01
    • 2015-08-28
    相关资源
    最近更新 更多