Почтовый метод с угловой ошибкой подачи 406 (Недопустимо) - PullRequest
0 голосов
/ 30 ноября 2018

Я пытаюсь вызвать отправку XML-данных в угловом формате и получить отправленный XML-файл на python (Django) и сохранить его в mongodb, но он выдал ошибку mi 406 (Not Acceptable) and detail ":" Не удалось удовлетворить заголовок запроса Accept.

В component.ts:

let headers = new Headers();
headers.append('Content-Type', 'application/xml');
headers.append('Accept', 'application/xml');
let body = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> " + 
           "<note> " + 
           "<to>Tove</to> " + 
           "<from>Jani</from> " + 
           "<heading>Reminder</heading> " + 
           "<body>Dont forget me this weekend!</body> " + 
           "</note>";
this.http.post(url, body, { headers: headers })
  .subscribe(data => {
    console.log(data);
  });

В views.py

def post(self, request):
  original_response = request.data
  save_response = LenderResponse(lender_response=str(original_response))
  return Response(original_response)

1 Ответ

0 голосов
/ 30 ноября 2018

406: Not Acceptable означает, что сервер не может вернуть данные в формате, который вы запрашивали с помощью заголовка Accept.

Вы передаете заголовок Accept: application/xml, но по какой-то причине ваш сервер делаетне поддерживает этот тип ответа.Вы должны либо передать другой заголовок с форматом, с которым сервер знает, как работать, либо изменить код сервера для поддержки типа ответа application/xml.

Для Django (так как он выглядит как ваш серверный фреймворк по выбору), вы должны использовать плагин REST Framework XML .

...