Я пробовал и пробовал все, я делал это 100 раз раньше, без проблем, но теперь я в тупик.WebRequest не будет передавать заголовки
Я просто хочу передать информацию заголовка из webrequest.
Клиент работает отдельно и подключается к службе отдыха wcf. Служба есть этот код, который получает удар:
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Authorization, Origin, Content-Type, Accept, X-Requested-With");
клиент имеет это:
var client = WebRequest.Create(url);
client.Method = type.ToString().ToUpper();
client.ContentType = "application/json";
client.ContentLength = bytes.Length;
client.Headers.Add(String.Format("Authorization: {0}", "test12345"));
Я также пробовал, например:
client.Headers["X-Requested-With"] = "test1234";
client.Headers["Authorization"] = "test1234";
Независимо от того, как я стараюсь и установить заголовки они никогда не передаются. Когда я смотрю на запрос в скрипаче, авторизация НИКОГДА не существует. Я также пытался отправить X-Requested-With и т. Д., Но независимо от того, что заголовок не пройдет.
Заранее спасибо.
UPDATE: Я нашел этот вопрос, но не решения: WebRequest will not pass headers when used from within ASP.NET MVC controller
Этот заголовок Authorization не выглядит действительный в соответствии со стандартом и, вероятно, раздел. Если вы хотите использовать пользовательский заголовок авторизации, возможно, используете другое имя заголовка? Как тест, что произойдет, если вы измените название своего заголовка на что-то другое? – wal
Я использовал этот формат раньше, и он отлично работал, но для funzies я пробовал другие способы, я обновил свой пост, чтобы его отразить. Спасибо за ответ :-) – schmoopy
также, что происходит, когда вы устанавливаете его более традиционным способом, например 'client .Credentials = new NetworkCredential (« пользователь »,« pass »);' (nb это приведет к другому результату, имеют выше) – wal