gpt4 book ai didi

java - 使用 ContentExchange 设置请求属性

转载 作者:太空宇宙 更新时间:2023-11-04 07:45:12 24 4
gpt4 key购买 nike

有没有办法在 ContentExchange 对象中设置请求属性?到目前为止,我一直在做的是使用 setRequestContentSource(InputStream inputstream) 方法在请求正文中将信息发送到服务器。但是,如果我想发送按字段名称分类的信息,例如 ContentTitleAuthor 等,我该怎么办?

我现在拥有的代码粘贴在下面。感谢您的帮助!

exchange.setRequestContentSource(new ByteArrayInputStream(
serialized.getBytes("UTF-8")));

exchange.setRequestContentType("text/html");
exchange.setMethod("POST");
exchange.setURL(("http://localhost:8089/"));
client.send(exchange);

更准确地说,请求属性是指相当于 request.setAttribute("Name","ABC") 的东西。仅在这种情况下,请求是通过 ContentExchange 对象发送的。

最佳答案

啊,所以 ServletRequest 属性不是 HTTP 协议(protocol)的一部分。没有标准方法可以通过 HTTP 协议(protocol)发送这些属性。事实上,servlet 规范本身限制了其对应用程序特定信息(例如将信息从过滤器传递到 servlet)和 SSL 证书相关信息的使用。

但是,使用standard POST and form data ,通过 exchange.setRequestContentType("multipart/form-data"); 并使用 HttpServletRequest.getParameter("Content") 获取这些值等等...类似于从网络浏览器提交表单的方式。这样做的好处是,您甚至可以提供一个简单的 HTML 表单来测试我们的应用程序。

选择 #2 是以 JSON 或 XML 等标记发送数据并让服务器解析它。这样做的好处是允许分层数据。

如果您对此感兴趣,我建议您阅读有关 REST 的内容,并可能深入研究 REST 库,例如 Jersey , Restlet ,以及类似 JAX-RS 的标准.

关于java - 使用 ContentExchange 设置请求属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15418452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com