httpClient 호출받는 페이지에서 header값은 어떻게 구현하는 걸까요?

안녕하세요.
httpclient통신으로 값을 주고 받는것을 처음 만들어보는데요.
header값에 Bearer값으로 넘겨줘야 한다고 하더라고요.

테스트를 위해 아래와 같이 전송페이지는 만들었고
수신받는페이지(Local_recv.aspx)에 강제로 json형태로 결과를 만들어서 정상응답은 받았습니다.

  1. Local_send.aspx

using (var httpClient = new HttpClient())
{
string url = “http://localhost/test/Local_recv.aspx?return_url=/webview/test.aspx”;

httpClient.DefaultRequestHeaders.Add("Authorization", "Bearer " + "authtest");

var parameters = new Dictionary<string, string>();
parameters.Add("message", "메시지");
var encodedContent = new FormUrlEncodedContent(parameters);

//var response = await httpClient.PostAsync(url , encodedContent).ConfigureAwait(false);
//var response = await httpClient.PostAsync(url , null).ConfigureAwait(false);
var response = await httpClient.PostAsync(url, null);

if (response.IsSuccessStatusCode)
{
    var jsonResponse = await response.Content.ReadAsStringAsync();

    JObject joResponse = JObject.Parse(jsonResponse);
    Response.Write("status=" + (string)joResponse["status"]);
    Response.Write("<br>");
    Response.Write("msg=" + (string)joResponse["msg"]);
    Response.Write("<br>");
    Response.Write("reason=" + (string)joResponse["reason"]);
    Response.Write("<br>");
    Response.Write("return_url=" + (string)joResponse["return_url"]);
    Response.Write("<br>");
    Response.Write("<br>");
} 

}

  1. local_Recv.aspx
    {
    “status”: “참”,
    “msg”: “성공”,
    “reason”: “잘했음”,
    “return_url”: “<%=Request[“return_url”] %>”
    }

이렇게 샘플은 완성되서 간단한 테스트는 되었는데.
header값으로 넘긴 bearer값(예:authtest)을 local_Recv.aspx 페이지에서 호출받는 방법을 모르겠네요.
하루종일 검색했는데, 제가 단어선택을 잘 못하는건지 방법이 잘 안보입니다.
어떻게 구현하는지 힌트좀 부탁드릴께요~ ^^

2 Likes

앗… 창피하네요.
그래도 안지우고 댓글 남깁니다 ㅎㅎ

그냥 request로 헤더값을 가져오면 되네요.
Request.Headers.Get(“Authorization”);

6 Likes

WebRequest면
webRequest.Headers[HttpRequestHeader.Authorization]
이걸로 사용해도 되겠네요~!