Не работает post запрос dojo

Всем добрый день. Занялся изучением dojo и столкнулся с тем что мой post запрос не отправляется на сервер в консоли выдаются вот такие ошибки 1):8080/insert:1 Failed to load resource: the server responded with a status of 415 () 2)(index):41 Uncaught TypeError: Cannot read property 'post' of undefined at send ((index):41) at HTMLButtonElement.onclick ((index):36) Вот отрезок кода который не работает, да и ещё зачем то пытается отправить запрос при открытии этой формы, если я правильно понимаю первую ошибку из текста выше

<div class="dijitHidden">
<form data-dojo-type="dojox/form/Manager" id="myForm" jsId="myForm" encType="multipart/form-data"action="/insert" method="post">
<div data-dojo-type="dijit/Dialog" style="width:600px;" data-dojo-props="title:'Добавить новый пост'" id="terms">
    <p><strong>Изложите свои мысли:</strong></p>
        <div style="height:150px;overflow-y:scroll;border:1px solid #769dc4;padding:0 10px;width:570px"
             data-dojo-type="dijit/form/ValidationTextBox" id="textPost"></div>
        <button id="submitBut" type="submit" onclick="send()">Добавить</button>
        <button onclick="hideDialog();">Отменить</button>
    <script>
        require(["dojo/request"],
            send = function(request){
                request.post("/insert", {
                    data: {
                        color: "blue",
                        answer: 42
                    },
                    headers: {
                        "X-Something": "A value"
                    }
                }).then(function(text){
                    console.log("The server returned: ", text);
                });
            });
    </script>
</div>
</form>

Код запроса взят с официального сайта dojo. Помогите разобраться в проблеме, буду очень благодарен


Ответы (1 шт):

Автор решения: Артур Муртазин

Разобрался что к чему чтобы работало с json надо чтобы было вот так

require(["dojo/request/xhr", "dojo/on", "dojo/dom", "dojo/domReady!"],
    function (xhr, on, dom) {
        on(dom.byId("submitBtn"), "click", function () {
            var blogText = dom.byId("textPost").value;
            xhr("http://localhost:8080/myservice", {
                method: "POST",
                handleAs: "json",
                headers: {'Content-Type': 'application/json'},
                data: {
                    blogText: blogText
                }
            }).then(function (jsonData) {
                location.reload();
            }, function (err) {
                alert("Your message could not be sent, please try again.");
            }, function (evt) {
            });
        });
    });

Единственное что смущает это location.reload(); Хотелось бы без нее, но как я не знаю.....

→ Ссылка