MVCを使用してHTTPに従ってWebApiメソッドを呼び出そうとしています。userIDやアプリのバージョンなどの情報を毎回送信する必要があります。この情報をヘッダーに追加するにはどうすればよいですか?現在のようにクライアント側のコードではなく、ajax呼び出しとして実行したい):
'beforeSend: function (req) {
req.setRequestHeader("Accept", "version=1.00,requestTime=" + new Date());
}'
しかし、サーバー側では、文字列でRequestHeaderを設定できません。これは私のサーバーコードです。
HttpClient client = new HttpClient();
var request = new HttpRequestMessage()
{
RequestUri = new Uri("http://localhost/WebAPIDemo/FilterAttribute-MVC"),
Method = HttpMethod.Get,
};
request.Headers.Accept.Add(***);
//request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
List<OfficeSupply> os=new List<OfficeSupply>();
var task = client.SendAsync(request)
.ContinueWith((taskwithmsg) =>
{
var response = taskwithmsg.Result;
var jsonTask = response.Content.ReadAsAsync<List<OfficeSupply>>();
jsonTask.Wait();
var jsonObject = jsonTask.Result;
os = jsonObject.ToList();
});
task.Wait();
***
'MediaTypeWithQualityHeaderValue'タイプの値である必要がありますが、ajax呼び出しのようにカスタムに設定したいだけです。どうすればいいですか?
また、Header Authorizationパラメーターを変更したいのですが、このコードは次のとおりです。
'client.DefaultRequestHeaders.Add("Authorization", "12345");'
動作しませんでした
request.Headers.Authorization.Parameter
読み取り専用だと言った。
送信する前にサーバー側で設定するにはどうすればよいですか?