Netty中如何发送带有POST参数的请求?

2024-03-30

我正在尝试在 Netty 中发送带有 POST 参数的请求。

我搜索了 Netty API、Google 和这里​​(Stack Overflow)

但没有找到什么好的办法。 (这可能是我糟糕的搜索技巧的错:'(如果是这样,我道歉)

有没有什么API可以轻松实现?

还是我必须通过对所有参数进行编码并自己在内容中设置来完成?

请告诉我任何好的方法。


以下是如何进行文件上传的示例:

https://github.com/netty/netty/tree/master/example/src/main/java/io/netty/example/http/upload https://github.com/netty/netty/tree/master/example/src/main/java/io/netty/example/http/upload

如果您不想上传文件,只需忽略 MIME 多部分位即可。

尝试类似的方法:

HttpRequest httpReq=new DefaultHttpRequest(HttpVersion.HTTP_1_1,HttpMethod.POST,uri);
httpReq.setHeader(HttpHeaders.Names.HOST,host);
httpReq.setHeader(HttpHeaders.Names.CONNECTION,HttpHeaders.Values.KEEP_ALIVE);
httpReq.setHeader(HttpHeaders.Names.ACCEPT_ENCODING,HttpHeaders.Values.GZIP);
httpReq.setHeader(HttpHeaders.Names.CONTENT_TYPE,"application/x-www-form-urlencoded");     
String params="a=b&c=d";
ChannelBuffer cb=ChannelBuffers.copiedBuffer(params,Charset.defaultCharset());
httpReq.setHeader(HttpHeaders.Names.CONTENT_LENGTH,cb.readableBytes());
httpReq.setContent(cb);

See 使用 Netty 发送 POST 参数,为什么版本中没有 DefaultHttpDataFactory ? https://stackoverflow.com/questions/7324680/sending-post-params-with-netty-and-why-isnt-defaulthttpdatafactory-not-in-the-r

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Netty中如何发送带有POST参数的请求? 的相关文章