Получить из API Чаши

У меня есть конечная точка для добавления элементов в таблицу DynamoDB "MasterList"

    @app.route('/save_listing', methods=['POST'], content_types=['application/json'], cors=cors_config)
    def post_item():
        try:
            data = app.current_request.json_body
        except Exception as e:
            data = e
        try:
            insert_item({ 
                'pk': data['sku'],
                "account" : data['account']
            })
        except Exception as e:
            return str(e)
        return str(data)

Когда я POST использую почтальон, он добавляет в таблицу и возвращает строку данных.

Сейчас я пытаюсь реализовать тот же POST в ReactJS

    createListing(listing) {
        console.log(listing)
        fetch('https://z3sr9ja4zf.execute-api.us-east-1.amazonaws.com/api/save_listing', {
          method: 'post',
          body: JSON.stringify(listing)

        }).then(function(response) {
          return response;
        });
    }

console.log (листинг) производит

Как я могу использовать конечную точку на ReactJS, кажется, что я не передаю объект правильно. Сейчас в БД ничего не пишется, и я получаю неопределенный ответ. Также я получил 415 ответ.

Заранее спасибо.

JSON.stringify(listing) производит:

{ "Код":"OX-PFWI-BNV0","счет": "АО", "ASIN":"","cogl":-5,09,"винтики": 0, "статус":"","launch_date":"NULL" "per_item_on_hand_rate":0,"selling_price":0,"expected_fulfillment_fee_per_unit":0,"рейтинг":0,"picture_count":0,"amz_status":"","fba_fee":0,"item_volume":"NULL","product_size_tier":"","volume_rate":"NULL","страна": "США", "менеджер":"NULL","sub_category":"NULL"}

Если я отправлю сообщение с помощью почтальона:

И Заголовки:

0 ответов

Код ответа HTTP 415 указывает, что серверу не нравится формат вашей полезной нагрузки. Попробуйте изменить код так, чтобы он включал те же заголовки, что и в вашем запросе PostMan:

createListing(listing) {
    console.log(listing)
    fetch('https://z3sr9ja4zf.execute-api.us-east-1.amazonaws.com/api/save_listing', {
      method: 'post',
      headers: {
         Accept: 'application/json',
         'Content-Type': 'application/json',
     },
      body: JSON.stringify(listing)

    }).then(function(response) {
      return response;
    });
}

ПРИМЕЧАНИЕ: я не включил Accept-Encoding в этом фрагменте кода значение на скриншоте недопустимо - для получения дополнительной информации см. здесь.

Другие вопросы по тегам