2012-03-23 3 views
1

я следующая ситуация:Изменение браузера заголовков при перенаправлении

Браузер делает POST с полезной нагрузкой Json на мой сервер конечной

Мой сервер обрабатывает данные, а затем выдает редирект на новое место

Браузер перенаправляет, но делает это с теми же заголовками, что и исходное сообщение, которое означает, что он приходит к моему концу, так что моя конечная точка считает, что это запрос json.

-> Я хочу, чтобы перенаправление прибыло на мой сервер в виде стандартного текста/html-запроса.

Возможно ли управлять заголовками, которые использует перенаправление, чтобы запрос Get поступал с текстом/html Принимать заголовки?

Вот некоторые фрагменты из стельки, чтобы подчеркнуть то, что я говорю:

Initial POST, JSON полезная нагрузка:

POST /App/Client/Index HTTP/1.1 
Accept: application/json, text/plain, */* 
X-Requested-With: XMLHttpRequest 

Ответ:

<html><head><title>Object moved</title></head><body> 
<h2>Object moved to <a href="%2App%2fClient%2f%2fSingleEntity%3fentityId%3df859a6ca-dbcf-49cf-8de0-3888b7011815">here</a>.</h2> 
</body></html> 

subsequest запрос GET из Перенаправление:

GET /App/Client/SingleEntity?entityId=f859a6ca-dbcf-49cf-8de0-3888b7011815 HTTP/1.1 
Accept: application/json, text/plain, */* 
X-Requested-With: XMLHttpRequest 

ответ

0

У меня было подобное требование. Мое решение было не посылать редирект, а «200 OK» в следующем формате JSON:

{"url": "http://example.com/redirect/to/some/resource"} 

Клиент использовал URL и перенаправляется с помощью Javascript, т.е. location.href = data.url. Это может быть не тот ответ, который вы ищете, но он решает вашу проблему ...

См. Также: How to manage a redirect request after a jQuery Ajax call

Смежные вопросы