Как получить файл Jupyter Notebook с пользовательским расширением - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь написать расширение Jupyter Notebook, в котором мне также нужно создать кнопку отправки, которая должна опубликовать файл текущей записной книжки на внешнем сервере.

Проблема в том, как мне получитьобъект файла записной книжки, а затем опубликовать его.Я не уверен, есть ли способ получить оригинальный файл ipynb и опубликовать его.

Я могу получить URL-адрес браузера, например "http://localhost:8888/notebooks/Untitled.ipynb",, поэтому я решил, что могу отправить запрос на получениеэтот URL, а затем опубликовать его, но запрос get, очевидно, отправляет HTML-файл записной книжки, который открывается в браузере.

Вот мой код

var that = Jupyter.menubar;
var browserURL = Jupyter.notebook.container[0].baseURI;
var request = new XMLHttpRequest();
request.open('GET', browserURL, true); // Send get request to browser URL
request.onload = function() {    
    var reader = new FileReader();    
    reader.readAsDataURL(request.response);
    reader.onload =  function(e){
        var notebookFile = e.target.result; // returned File
        $.ajax({
            url : 'http://example.com/hello.php',
            type : "POST",
            dataType: "json",
            crossDomain: true,
            data: {
                'file': notebookFile,
                'msg': "Hello"
            },
            success: function(data) {
                console.log("Success");
            },
            error: function(xhr, status, error) {
                console.log("error");
            }
        });
    };
};
request.send();

Мой вопрос заключается в том, как можноЯ получаю файл записной книжки, над которым работаю, и могу опубликовать его на сервере.

Спасибо

...