Отправить токен с помощью window.location

0

У меня есть кнопка в моем приложении responsejs, который при нажатии должен загрузить файл. Мне нужно отправить токен с запросом, чтобы пользователь мог загрузить файл. Как я могу отправить токен с ним? Если бы это был ajax, я бы послал токен в заголовке.

Это мой код

<div className="btn btn-default obj-export-btn" onClick={this.exportObjectReport.bind(this)}><span className="fa fa-download"></span></div>


exportObjectReport(){

        window.location = url + "get_labels/";
    }

exportObjectReport - загрузить файл.

Я пробовал использовать ajax. Но тогда файл не загружается. Ajax получает успех, но без загрузки.

exportObjectReport(){
       // window.location = this.props.video_file_selected.file_url + "get_labels/";

        var that = this;
        var existing_face_array = [];
        var settings = {
            "async": true,
            "crossDomain": true,
            "url": url + "get_labels/",
            "method": "GET",
            "headers": {
                Authorization: "Token " + that.props.token_Reducer.token
            },
            success: function (response, textStatus, jQxhr) {
                console.log('export success')
            },
        }

        $.ajax(settings).done((response) => {

        });
    }
  • 0
    Есть ли причина, по которой вы не скачиваете файл с помощью AJAX?
  • 0
    Ajax не загружает файл. Выполняется успешно, но загрузка не происходит. Пожалуйста, смотрите мой код обновления.
Показать ещё 1 комментарий
Теги:

2 ответа

0

Во-первых, можно использовать JQuery с React, но не рекомендуется, так как это две библиотеки, которые делают одно и то же (манипулирование DOM). Вместо этого используйте библиотеку, созданную специально для запросов или использования XHR-запросов.

Ответ на ваш вопрос уже существует здесь: qaru.site/questions/23644/...

Ответ содержит как решение XHR, так и решение JQuery

0

Вы можете попробовать и отправить его в качестве параметра запроса:

exportObjectReport(){

        window.location = url + "get_labels/" + "?token=YOUR_TOKEN";
    }

а затем проверить его на сервере.

Это очень распространенный шаблон для различных публичных API

  • 0
    Я должен отправить токен только в качестве заголовка. Смотрите мое обновление
  • 0
    взято отсюда: stackoverflow.com/questions/35236874/… - Вы не можете ничего передавать через заголовки во время перенаправления.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню