curl
요청을 일부 헤더 및 인증 정보를 전달하려고합니다.HttpWebRequest를 통해 API_KEY를 전달하는 방법
내가 보내려하는 모든 정보가 성공적으로 전송되었지만 일반 사용자 이름/암호 방식 대신 사용해야하는 API 키를 보내는 방법에 어려움이 있습니다.
curl
웹 사이트를 사용하여 curl
요청을 보내면 api 키 다음에 :
을 넣은 다음 모든 것이 완벽하게 작동합니다.
그리고 이것은 내가이 내가 그렇게하기 위해 사용하고 코드입니다 HttpWebRequest
사용하여 C#으로 수행 할 것입니다 :
string credentials = String.Format("{0}:{1}", "API_KEY", "GivenApiKey: ");
byte[] bytes = Encoding.ASCII.GetBytes(credentials);
string base64 = Convert.ToBase64String(bytes);
string authorization = String.Concat("Basic ", base64);
var httpWebRequest = (HttpWebRequest)WebRequest.Create("https://api.website.com/test");
httpWebRequest.ReadWriteTimeout = 100000;
httpWebRequest.ContentType = "application/json";
httpWebRequest.Accept = "application/json";
httpWebRequest.Method = "POST";
httpWebRequest.UserAgent = "GivenUserAgent";
httpWebRequest.Credentials = new NetworkCredential("Authorization", authorization);
하시기 바랍니다 어떤 도움을?
는 API 요청에 당신이하고있는이 기본 인증 헤더가 발생합니다 방식으로 자격 증명을 추가. 아래의 @ Hespen의 응답과 같이 수동으로 Auth 헤더를 추가하십시오. – Theo