Size: a a a

Node.js — русскоговорящее сообщество

2021 January 22

y

ymdev in Node.js — русскоговорящее сообщество
mhmd mlh
А можешь дать пример в каких запросах какой заголовок нужен?
ну, например, если ты в браузере отправишь форму
<form>...</form>
то кодировка будет по-умолчанию как раз с urlencoded
источник

mm

mhmd mlh in Node.js — русскоговорящее сообщество
То есть он нужен только в пост запросах?
источник

y

ymdev in Node.js — русскоговорящее сообщество
mhmd mlh
То есть он нужен только в пост запросах?
в любых, кроме тех, где не предусмотрено тела у запроса. Просто это один из видов, как можно отправить данные.
источник

y

ymdev in Node.js — русскоговорящее сообщество
mhmd mlh
А можешь дать пример в каких запросах какой заголовок нужен?
Ну то есть все это - это чистая условность. Я могу отправить запрос, содержащий content-type для json, а в теле что-то типо a=10&b=20. Это невалидный json, но кто мне помешает его обработать, как я захочу?
источник

mm

mhmd mlh in Node.js — русскоговорящее сообщество
Понял, спасибо большое за разъяснение
источник

y

ymdev in Node.js — русскоговорящее сообщество
mhmd mlh
Понял, спасибо большое за разъяснение
просто если мы говорим про express. Вызов express.json будет ожидать, что для обработки входящего запроса  у него должен быть content-type: application/json и тело - это валидный json

Вызов express.urlencode будет ожидать, что content-type: application/x-www-form-urlencoded, а тело вида, наверное, key=value&key1=value1
источник

N

Nikita in Node.js — русскоговорящее сообщество
ymdev
просто если мы говорим про express. Вызов express.json будет ожидать, что для обработки входящего запроса  у него должен быть content-type: application/json и тело - это валидный json

Вызов express.urlencode будет ожидать, что content-type: application/x-www-form-urlencoded, а тело вида, наверное, key=value&key1=value1
кстати из за этого бывает что не выодит с некоторыми апи интегрироваться, они отправляют вебхук на експресс сервер, с JSON телом, но не ставят верный content-type, и ты сидишь полдня не можешь понять что не так
источник

N

Nikita in Node.js — русскоговорящее сообщество
но это конечно вопрос к тому кто писал оптравку этих вебхуков..
источник

Д

Дима in Node.js — русскоговорящее сообщество
приветствую, подскажите пожалуйста, зачем некоторые апишки возвращают ответ в дополнительном поле response?
источник

ДД

Денис Дмитров... in Node.js — русскоговорящее сообщество
const fs = require('fs')
const util = require('util')
const writeFilePromisified = util.promisify(fs.writeFile)

const testFunc2 = async () => {
 await writeFilePromisified('text.txt', 'hello world')
}
источник

ДД

Денис Дмитров... in Node.js — русскоговорящее сообщество
даже при таком коде все равно бесконечно зацикливает функцию
источник

ДД

Денис Дмитров... in Node.js — русскоговорящее сообщество
вот експорт exports.testFunc2 = testFunc2;
источник

y

ymdev in Node.js — русскоговорящее сообщество
Денис Дмитров
даже при таком коде все равно бесконечно зацикливает функцию
ну без полной картины тебе особо ничем не помогут
источник

ДД

Денис Дмитров... in Node.js — русскоговорящее сообщество
const path = require("path");
const { v4: uuidv4 } = require("uuid");
const util = require("util");
const fs = require("fs");
const writeFilePromisified = util.promisify(fs.writeFile);
// const fsp = require("fs/promises");
const contactsPath = path.join(__dirname, "./db", "contacts.json");

function listContacts() {
 return new Promise((resolve, rejects) => {
   fs.readFile(contactsPath, (err, data) => {
     if (err) rejects(err);
     arr = Buffer.from(data).toString();
     resolve(JSON.parse(arr));
   });
 });
}

async function getContactById(contactId) {
 const data = await listContacts();
 //  console.log(data[0])
 const foundContact = data.filter(({ id }) => id === contactId);
 console.log(foundContact);
}
const removeContact = async (contactId) => {
 try {
   const data = await listContacts();
   const newArr = data.filter(({ id }) => id !== contactId);
   console.log(newArr);
   await writeFilePromisified(contactsPath, JSON.stringify(newArr));
 } catch (err) {
   console.log(err);
 }
};
источник

ДД

Денис Дмитров... in Node.js — русскоговорящее сообщество
const cont = require("./contacts");

// console.log('test',cont.listContacts());
// cont.listContacts();
// cont.removeContact(2);
источник

Ratibor Игорь Матвию... in Node.js — русскоговорящее сообщество
Посоветуйте решение, метод delete не срабатывает, при удалении выдает ошибку 500 RuntimeError, метод post работает
источник

Ratibor Игорь Матвию... in Node.js — русскоговорящее сообщество
источник

Ratibor Игорь Матвию... in Node.js — русскоговорящее сообщество
источник

N

Nikita in Node.js — русскоговорящее сообщество
Денис Дмитров
const path = require("path");
const { v4: uuidv4 } = require("uuid");
const util = require("util");
const fs = require("fs");
const writeFilePromisified = util.promisify(fs.writeFile);
// const fsp = require("fs/promises");
const contactsPath = path.join(__dirname, "./db", "contacts.json");

function listContacts() {
 return new Promise((resolve, rejects) => {
   fs.readFile(contactsPath, (err, data) => {
     if (err) rejects(err);
     arr = Buffer.from(data).toString();
     resolve(JSON.parse(arr));
   });
 });
}

async function getContactById(contactId) {
 const data = await listContacts();
 //  console.log(data[0])
 const foundContact = data.filter(({ id }) => id === contactId);
 console.log(foundContact);
}
const removeContact = async (contactId) => {
 try {
   const data = await listContacts();
   const newArr = data.filter(({ id }) => id !== contactId);
   console.log(newArr);
   await writeFilePromisified(contactsPath, JSON.stringify(newArr));
 } catch (err) {
   console.log(err);
 }
};
уверены что такой бд на коленке хватит для ваших целей?
источник

N

Nikita in Node.js — русскоговорящее сообщество
не могу понять , RuntimeError это ошибка сервера или на клиенте?
источник