【发布时间】:2014-03-03 14:55:46
【问题描述】:
我想从 java 中“填写”网站上的表格。我使用 charles 代理确定按下此表单上的“注册”按钮会发送一个 URL 编码的 Http post 请求。
例如,如果网站是:
https://apps.business.com/register
然后http post被发送到:
https://apps.business.com/registersend
然后我使用 chrome 的 Advanced Rest Client 插件成功发送了一个示例注册请求。
但是,我现在想从 Java 手动发送此请求。我认为因为它是 URL 编码,所以将 URL 编码的字符串附加到 URL 的其余部分是一个简单的情况。比如:
https://apps.business.com/registersend/?email=me%40hotmail.com
等等,但我似乎无法让它工作并假设我错过了一些东西。
感谢您的帮助。
【问题讨论】:
-
POST 数据不通过 URL 发送。那将是一个 GET 查询......它可以与一个 POST 请求一起发送,但它们是两个完全独立的机制,可能碰巧共享同一个请求。
-
好的,这是否意味着当我将 URL 编码字符串输入到帖子有效负载中时,它实际上是作为帖子的内容传递的,而不是附加到 URL 中?抱歉,这似乎是一个愚蠢的问题,但整个“URL 编码”部分让我感到困惑。感谢您的回复。
-
POST 数据进入请求正文。 GET 数据作为 URL 的一部分放入标头中。基本上 post 数据看起来和 GET 数据几乎一样,但它们的位置完全不同。
标签: java post https url-encoding