Size: a a a

Nuxt.js | Vue SSR

2021 February 17

AD

Aleksandr Dergunov in Nuxt.js | Vue SSR
Request URL: http://localhost:3000/api/email/uf
Referrer Policy: strict-origin-when-cross-origin

Provisional headers are shown
Accept: application/json, text/plain, */*
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryZ3n2FKfKn2YFmJmY
DNT: 1
Referer: http://localhost:5000/
sec-ch-ua: "Chromium";v="88", "Google Chrome";v="88", ";Not A Brand";v="99"
sec-ch-ua-mobile: ?0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36

name: Тест
phone: 0000000000
url: /
источник

AD

Aleksandr Dergunov in Nuxt.js | Vue SSR
Вчера всё работало))))))))))
источник

DP

Dmitry Petrik in Nuxt.js | Vue SSR
Aleksandr Dergunov
Access to XMLHttpRequest at 'http://localhost:3000/api/email/uf' from origin 'http://localhost:5000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Добавь в хедеры на сервере Access-Control-Allow-Origin: *
источник

DP

Dmitry Petrik in Nuxt.js | Vue SSR
Но вообще это все на какой-то трешак смахивает
источник

AD

Aleksandr Dergunov in Nuxt.js | Vue SSR
Dmitry Petrik
Добавь в хедеры на сервере Access-Control-Allow-Origin: *
Это делает var cors = require("cors");
источник

AD

Aleksandr Dergunov in Nuxt.js | Vue SSR
Dmitry Petrik
Но вообще это все на какой-то трешак смахивает
Так, а конкретика?
источник

DP

Dmitry Petrik in Nuxt.js | Vue SSR
Aleksandr Dergunov
Это делает var cors = require("cors");
Не похоже что делает)
источник

ИК

Илья Киселев... in Nuxt.js | Vue SSR
Aleksandr Dergunov
На бэке принимаю:
const express = require("express");
var cors = require("cors");
const router = express.Router();
const app = express();

var corsOptions = {
 origin: "*",
};

router.post("/uf", cors(corsOptions), (req, res) => {
 if (req.body.name && req.body.phone && req.body.url) {
   const { name, phone } = req.body;
   const template = шаблон сообщения;
   sendMail(template);
   res.status(200).json("Сообщение отправлено");
 } else {
   res.status(500).json({ message: "Не хватает данных для отправки почты" });
 }
});
ты что то потерял
источник

ИК

Илья Киселев... in Nuxt.js | Vue SSR
app.use(cors());
источник

V

Vlad in Nuxt.js | Vue SSR
Aleksandr Dergunov
Есть отдельно фронт, крутится на 5000 порту.
Есть бэк, крутится на 3000 порту.
На фроне в nuxt.config указано:
axios: { proxy: true },
proxy: { "/api/": "http://localhost:3000" },

На фронте отправляю данные:
send() {
     const formData = new FormData();
     formData.append("data", this.data);
     this.$axios
       .post("http://localhost:3000/api/email", formData, {
         headers: { "Content-Type": "multipart/form-data" },
       })
   }
тебе в консоль накста во время обращения к апи выплевывается строка от прокси?
источник

ИК

Илья Киселев... in Nuxt.js | Vue SSR
cors определил а кто будет его использовать
источник

AD

Aleksandr Dergunov in Nuxt.js | Vue SSR
Илья Киселев
app.use(cors());
Если на все роуты применять, то да. Но мне это нужно только на 1. Поэтому:
router.post("/uf", cors(corsOptions), (req, res) => {
источник

ИК

Илья Киселев... in Nuxt.js | Vue SSR
аааа
источник

Д

Деда in Nuxt.js | Vue SSR
Илья Киселев
Может ему кроме даты еще что то нужно
Так это разве родной axios используется? И разве прокси не решает проблему cors?
источник

AD

Aleksandr Dergunov in Nuxt.js | Vue SSR
Деда
Так это разве родной axios используется? И разве прокси не решает проблему cors?
Это "@nuxtjs/axios": "^5.13.1",
Настройки прокси в nuxt.config выше скидывал.
источник

ИК

Илья Киселев... in Nuxt.js | Vue SSR
Aleksandr Dergunov
Если на все роуты применять, то да. Но мне это нужно только на 1. Поэтому:
router.post("/uf", cors(corsOptions), (req, res) => {
попробуй убрать corsOptions
источник

Д

Деда in Nuxt.js | Vue SSR
Хм, у меня же вроде тоже последняя и $post там а не post
источник

AD

Aleksandr Dergunov in Nuxt.js | Vue SSR
Илья Киселев
попробуй убрать corsOptions
Пробовал. Не меняется ничего.
источник

ИК

Илья Киселев... in Nuxt.js | Vue SSR
понял короче
источник

ИК

Илья Киселев... in Nuxt.js | Vue SSR
ты определил корс только для post
источник