2017-05-24 44 views
0

我试图让jsoup相当于下面的curl命令的卷曲相当于-u

curl -X POST \ 
    -d '{ "code": "7c7u......" }' \ 
    -H 'Content-Type: application/json' \ 
    -u 'userOfApi:passForUser' \ 
    https://some.api.org.xyz/v2/oauth2/authorizations? 

我想通过以下方式

Connection con = Jsoup.connect(url) 
     .method(Connection.Method.POST) 
     .header("Content-Type", "application/json") 
     .header("Authorization", "Basic user:pass") // these are base64 encoded 
     .requestBody(data) 
     .userAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1042.0 Safari/535.21") 
     .ignoreContentType(true); 

,但我似乎无法传递如curl -u选项所指定的服务器用户和密码。任何想法我怎么能用Jsoup来实现呢?或者如果没有Jsoup,那么还有其他选项。

+1

[基本访问身份验证的Jsoup连接]的可能重复(https://stackoverflow.com/questions/7679916/jsoup-connection-with-basic-access-authentication) – Marged

回答

0

尝试调试curl请求,并添加-vv参数,并查看Jsoup请求中缺少的内容。

再次,你的data变量,一个字符串或对象?

因为,另一个问题可能是用于发送数据的编码类型。