2012-04-13 3 views
4

Я пытаюсь отправить строку json службе REST. Используется следующий код:Firefox не соблюдает заголовок Content-type в xhrPost

dojo.xhrPost({ 
    url: REST_URL, 
    postData: jsonData, 
    handleAs: "json", 
    headers: {"Content-Type": "application/json"},  
    load: function(response, ioArgs) { 
    alert(response); 
    },  
    error: function(response, ioArgs) { 
     alert(response); 
    } 
    }); 

Я перехватываю запросы, отправленные браузерами (IE/Firefox) с использованием скрипача. Когда я отправляю запрос от IE, fiddler показывает заголовок Content-type, который устанавливается в «application/json».

Однако, когда тот же запрос отправляется с использованием Firefox, заголовок Content-type не отображается в заголовках запроса (что не добавлено Firefox). Мой сервер настроен для проверки того, что тип контента является «application/json». Следовательно, запрос отклоняется сервером.

Вопрос:

  1. Что мне делать сейчас, чтобы сделать эту работу в Firefox
  2. И самое главное, почему оленья кожа светлячок добавить заголовок для Content-типа для заголовков запроса? среда Детали: OS: Win7 32 бит, браузеры: IE8/9 & Firefox 11
+0

Как правило, это работает. Можете ли вы ссылаться на фактическую страницу, показывающую проблему? –

+0

Это внутренняя деятельность в области развития. Я попытаюсь воспроизвести то же самое где-нибудь еще и поделиться кодом. Благодарю. –

ответ

1

Я знаю, что этот вопрос мертв, но с таким же вопросом, который я нашел bug report

Если вы ищете что wisdom of the ancients я надеюсь, что это помогает;)

2

Там может быть ошибка в тесте. Firefox также добавляет заголовок Content-type, который вы укажете. Единственная разница между IE/Chrome и Firefox заключается в том, что FF добавляет информацию о наборе символов, как показано ниже.

Content-Type: application/json; charset=UTF-8 
+0

Спасибо. Мы слишком много раз анализировали его, чтобы это было ошибкой. –