私は、かなり標準的な Web サービス API である Harvest API を使用しています。私の curl リクエストは正常に機能していますが、Dart HttpClient リクエストは正常に機能していません。これが私のcurlリクエストです(もちろん、機密情報は偽装されています):
curl -H "Content-Type: application/json" \
-H "Accept: application/json" \
-u "address@domain.com:password" \
https://my_domain.harvestapp.com/account/who_am_i
更新--- 次のコードが機能するようになりました。
HttpClient client = new HttpClient();
client.addCredentials(
Uri.parse('https://my_domain.harvestapp.com/account/who_am_i'),
'realm',
new HttpClientBasicCredentials('address@domain.com', 'password')
);
client.getUrl(Uri.parse('https://my_domain.harvestapp.com/account/who_am_i'))
.then((HttpClientRequest req) {
req.headers
..add(HttpHeaders.ACCEPT, 'application/json')
..add(HttpHeaders.CONTENT_TYPE, 'application/json');
return req.close();
})
.then((HttpClientResponse res) {
print(res);
client.close();
});
}
明らかに、私は単なる応答以上のことをしたいと思っていますがprint
、何があってもres
オブジェクトは最終的に になりますnull
。これは、要求が何らかの点で失敗していることを意味します。何かがおかしい、または間違っているように見えますか? 私は今のところ途方に暮れています。