Я пытаюсь опубликовать строку в веб-сервис, используя ajax jquery, но я получаю эту ошибку 500 внутренняя ошибка сервера - PullRequest
0 голосов
/ 05 июля 2018
` $("#but1").click(function ()
       {
         var data = { "temp": text };
           $.ajax({
            type: 'POST',
             data: JSON.stringify(data),  
             datatype: 'jsonp',
             contentType: 'application/json',

             url:"https://thermostatapp.azurewebsites.net/api/updatetemp",
            crossDomain: true,
             success: function (data) {
                                    alert('success');
                                      },

             });
        } `

Изображение инструмента разработчика, показывающее ошибку

данные отправляются на сервер, но из-за функции обратного вызова я получаю внутреннюю ошибку сервера через 2 минуты. код на стороне сервера

    'use strict';
var express = require('express');
var app = express();
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017";
var bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

var cors = require("cors");

app.use(cors({
    origin: '*'
}));


var http = require('http');

var port = process.env.PORT || 1337;
http.createServer(app).listen(port);





 app.post('/api/updatetemp', function (req, res) {
var temper = req.body.temp;
MongoClient.connect(url, function (err, db) {

        if (err) throw err;
        var dbo = db.db("unity");

        var myquery = { first_name: "sid" };



            var newvalue = {

                $set: { temp: temper }
        }
 dbo.collection("user_list").updateOne(myquery, newvalue, function (err, result) {
            if (err) throw err;


            else
                console.log("update!1!")



            db.close();


        });

    });

как я могу найти причину проблемы? Будет ли отправка токена csrf с помощью вызова ajax исправить ошибку, так как я использую Express Framework?

...