0
APIを使用してcoinfloorからの残高を取得しようとしています。 認証されていない/パブリックなGETレスポンスを正常に解析できましたが、 。 401、のreasonPhrase:HttpClientを使用した単純なAPI投稿
は現在、私はのStatusCode取得私はデフォルトの認証ヘッダの両方を使用してFormUrlEncodedContentでデータを送信しようとした
class Program
{
static HttpClient client = new HttpClient();
static void Main()
{
RunAsync().Wait();
}
static async Task RunAsync()
{
client.BaseAddress = new Uri("https://webapi.coinfloor.co.uk:8090/bist/XBT/GBP/balance/");
client.DefaultRequestHeaders.Authorization= new AuthenticationHeaderValue("Basic", Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(string.Format("{0}:{1}", "userID/apikey", "passphrase"))));
var content = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("User ID","userid"),
new KeyValuePair<string, string>("API key","apikey"),
new KeyValuePair<string, string>("Passphrase","pass")
});
try
{
var result = await client.PostAsync("https://webapi.coinfloor.co.uk:8090/bist/XBT/GBP/balance/", content);
string resultContent = await result.Content.ReadAsStringAsync();
}
'無断'。 documentationには「すべてのプライベートAPI呼び出しに認証が必要です。ユーザーID、APIキー、パスフレーズ」という3つのパラメータを指定する必要があります。
私は間違っていますか?
リクエストに他の追加パラメータをどのように送信する必要がありますか?
あなたのリクエストを見て、期待どおりに見えるように傷つけることはありません。 – Evk
ユーザID、api鍵とパスフレーズ、または文字列値 "userID/apikey"と "passphrase"の実際の値を送信していますか? –
TobiasとEvkに感謝します。コードに正しい値があります。この記事のために編集しました。要求ヘッダーの下でフリードラーで正しい要求がどのように見えるかを調べようとしていますが、私には正しいヘッダーであるFormUrlEncodedContentの値を含む標準ヘッダーと追加の文字列が表示されます – user289829