Форум программистов, компьютерный форум, киберфорум
Node.js
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 25.11.2015
Сообщений: 3

Как правильно сделать пост запрос json?

27.01.2016, 01:27. Показов 882. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
День Добрый. Пишу небольшой сервис для локального osm сервера. Встала проблема с пост запросом на добавление записи в базу. в данном скрипте заносится uuid и тип метки но координаты не пишутся, и не могу понять как их занести туда
Код Сервиса:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
// BASE SETUP
// =============================================================================
 
// call the packages we need
var express    = require('express');
var bodyParser = require('body-parser');
var app        = express();
var morgan     = require('morgan');
 
// configure app
app.use(morgan('dev')); // log requests to the console
 
// configure body parser
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
 
var port     = process.env.PORT || 80; // set our port
 
var mongoose   = require('mongoose');
mongoose.connect('mongodb://admin@192.168.0.206:27017/monitor'); // connect to our database
var Device     = require('./models/device');
 
// ROUTES FOR OUR API
// =============================================================================
 
// create our router
var router = express.Router();
 
// middleware to use for all requests
router.use(function(req, res, next) {
  // do logging
  console.log('Something is happening.');
  next();
});
 
// test route to make sure everything is working (accessed at GET [url]http://localhost:8080/api[/url])
router.get('/', function(req, res) {
  res.render({ message: 'hooray! welcome to our api!' });   
});
 
// ----------------------------------------------------
router.route('/devices')
 
 
  .post(function(req, res) {
    
    var device = new Device();
    device.uuid = req.body.uuid;
    device.location.coordinates = req.body.location.coordinates;
    device.location.type = req.body.location.type;
 
    device.save(function(err) {
      if (err)
        res.send(err);
 
      res.json({ message: 'Device created!' });
    });
 
    
  })
 
  .get(function(req, res) {
    Device.find(function(err, devices) {
      if (err)
        res.send(err);
 
      res.json(devices);
    });
  });
 
router.route('/devices/:device_id')
 
  .get(function(req, res) {
    Device.findById(req.params.device_id, function(err, device) {
      if (err)
        res.send(err);
      res.json(device);
    });
  })
 
  .put(function(req, res) {
    Device.findById(req.params.device_id, function(err, device) {
 
      if (err)
        res.send(err);
 
      device.uuid = req.body.uuid;
      device.save(function(err) {
        if (err)
          res.send(err);
 
        res.json({ message: 'Device updated!' });
      });
 
    });
  })
 
  .delete(function(req, res) {
    Device.remove({
      _id: req.params.device_id
    }, function(err, device) {
      if (err)
        res.send(err);
 
      res.json({ message: 'Successfully deleted' });
    });
  });
 
 
// REGISTER OUR ROUTES -------------------------------
app.use('/api', router);
 
// START THE SERVER
// =============================================================================
app.listen(port);
console.log('Magic happens on port ' + port);
Код Модели:

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// app/models/device.js
 
var mongoose     = require('mongoose');
var Schema       = mongoose.Schema;
 
var DevicesSchema   = new Schema({
    uuid: String,
    location : {
    type: { 
      type: String,
      default: 'Point'
    }, 
    coordinates: [Number]
    }
},{
    versionKey: false
});
 
module.exports = mongoose.model('Device', DevicesSchema);
Буду благодарен за любые подсказки и помощь. Заранее всем спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.01.2016, 01:27
Ответы с готовыми решениями:

Как правильно составить пост запрос? Для отправки сообщения в чат
Доброго времени суток! Собственно вот мой String request = "http://www7.cbox.ws/box/index.php?"; String...

Как отправить пост запрос и сделать редирект на УРЛ
Мне нужно отправить на определенный скрипт POST запрос и затем перейти на этот адрес, чтобы был виден результат POST запроса. С...

Не правильно отправляю пост запрос
Добрый день,вот недавно начал изучать как отправить пост или гет запрос на c#. С авторизацией проблем не возникло,но вот проблема в том...

3
Ренегат
Эксперт HTML/CSS
 Аватар для BANO
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
27.01.2016, 21:12
kiras, может я чего-то не допонимаю, но как у вас работает так бодипарсер, чтобы читать json?
просто насколько мне известно нельзя сделать форму, в которой группа реально будет группой, то есть чтобы это объединялось в какой-то объект, может я конечно чего-то недопонимаю, а может и ошибаюсь
0
0 / 0 / 0
Регистрация: 25.11.2015
Сообщений: 3
27.01.2016, 22:00  [ТС]
а как же по вашему тогда отправляются данные в формате geo? ведь там не один параметр идет
0
Ренегат
Эксперт HTML/CSS
 Аватар для BANO
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
27.01.2016, 22:11
и как же вы его отправляете, если такого формата не предусмотрено в обычных формах?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.01.2016, 22:11
Помогаю со студенческими работами здесь

Как правильно сделать parser json?
{ "1": { "row": { "last": "1,0930", "ma": "\u0410\u043a\u0442\u0438\u0432\u043d\u043e...

Выборка mysql, как правильно сделать json?
делаю выборку из базы через ajax. как правильно сформировать ответ json делаю так но получаю $rows=array(); ...

Отправить POST запрос и получить json данные с сервера. Как сделать?
Добрый день. Мне нужно создать html форму с двумя полями username и password, методом POST отправить ее на сервер. Далее получить от...

Как на java сделать JSON запрос и ответ от какого нибудь определенного сайта. Как это все делается ?
цццц

Как правильно сделать get-запрос?
сделал поток , создал глоб. переменную accounts типа tstringlist , добавил туда ссылки для гет запроса , получилось что-то вроде этого : ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru