2016-04-26 8 views
1

У меня возникло несколько проблем с firefox, но не в хром.Несколько вопросов в firefox, но работает правильно в хромированном виде без какой-либо одной проблемы

1) вопрос в TypeError: response.body is null.

2) при загрузке изображений я получаю TypeError: Аргумент 1 формы FormData.constructor не реализует интерфейс HTMLFormElement.

код, где показано являются

для номер 1 выпуск (я использовал SuperAgent для этого) вопрос

search(query='Ganesh Chowk'){ 
    let url = "/api/v1/rental/?place__startswith="+encodeURIComponent(query); 
    Request.get(url).then((response) => { 
    if (response) { 
     this.setState({ 
      place:response.body.objects, 
     }); 
    } else { 
     this.setState({ 
      place: [], 
     }); 
    } 
}); 

для 2-го выпуска

let image = []; 
class RenderPhotos extends React.Component { 
    constructor(props, context) { 
     super(props, context); 
     this.state = { 
      files: [] 
     }; 
    } 

    onDrop(files) { 
     console.log('Received files: ', files); 
     this.setState({ 
      files: files 
     }); 

    image = new FormData(files); 
    $.each(files,function(i,file){ 
     image.append('image',file); 
    }); 

    } 

Почему этот код работает на хроме, а не в firefox? Что нужно изменить, чтобы этот код работал во всех браузерах?

ответ

1

Что касается ошибки 2: Если передается FormData конструктор это должен быть HTML <Form> элемент, который, кажется, не имеет место в вашем коде. Так просто падение параметров:

image = new FormData(); 

Update:

Что касается ошибки 1: Как вы узнали себя запрос нужно принять заголовок application/json. Из-за различий в заголовках принимающих Chrome и Firefox по умолчанию сервер, похоже, возвращает полезную нагрузку json для Chrome, а не для Firefox. В любом случае явный заголовок разрешает эту проблему.

+0

Он работал как шарм. Вы знаете причину первого выпуска? – milan

+0

@ Милан №. Возможно, вы можете обнаружить причину, если сравнить HTTP-запрос и ответ в сетевых средствах dev при запуске в Chrome и Firefox. – wero

+0

Спасибо, я постараюсь диагностировать проблему. – milan