adfffewr0825
@adfffewr0825
Reviews Written
1
Average Rating
4.0
Posts
Q&A
์ด๋ฏธ์ง ๋ฑ๋ก์ CORS ๋ฌธ์ ๊ฐ ๋์ต๋๋ค.
์ฉ๋๋ฌธ์ ํด๊ฒฐ ํ์ต๋๋ค. https://storyinglass.tistory.com/11 Nginx ์์ ์ฉ๋ ์ ํ์ ๋ํ์ฃผ๋๊น ์ฉ๋์ด ํฐ ์ด๋ฏธ์ง๋ ์ ์์ ์ผ๋ก ์ฌ๋ผ๊ฐ๋๋ค
- 0
- 9
- 1.1K
Q&A
์ด๋ฏธ์ง ๋ฑ๋ก์ CORS ๋ฌธ์ ๊ฐ ๋์ต๋๋ค.
ํด๊ฒฐํ์ต๋๋ค. ์์ง ์ ํํ๊ฒ์ ์ ๋ชจ๋ฅด๊ฒ ์ง๋ง 1.3mb ์ด๋ฏธ์ง๋ ์ค๋ฅ๊ฐ ๋์๊ณ 9kb ํฌ๊ธฐ์ ์ด๋ฏธ์ง๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์์๊ฒ์ผ๋ก ๋ด์ ํฌ๊ธฐ ์ค์ ์ ๋ฌธ์ ๊ฐ ์์๋๊ฒ ๊ฐ์ต๋๋ค
- 0
- 9
- 1.1K
Q&A
์ด๋ฏธ์ง ๋ฑ๋ก์ CORS ๋ฌธ์ ๊ฐ ๋์ต๋๋ค.
cors({ origin: true, credentials: true}) ํ๋๊น ๋ค์ ์ฒ์๊ณผ ๊ฐ์ ์ค๋ฅ๊ฐ ๋์ต๋๋ค ใ ใ ใ nginx ๋ฐ๋ก ๋ค๋ฅธ ์ค์ ์ ํด์ค์ผ ํ ๊น์?
- 0
- 9
- 1.1K
Q&A
์ด๋ฏธ์ง ๋ฑ๋ก์ CORS ๋ฌธ์ ๊ฐ ๋์ต๋๋ค.
imageRouter ์์ cors ์ถ๊ฐ๋ฅผ ํด๋ ์ค๋ฅ๊ฐ ๋์ต๋๋ค. ํ ์คํธ๋ก ๊ทธ ๋ฐ์ router.post('/test', (req, res, next) => { res. status(200).json({aa : 'ok'})}); ๋ฅผ ๋ง๋ค์ด์ ํด๋ดค๋๋ฐ ์ด๊ฑฐ๋ ๋ ์ ์์ ์ผ๋ก ์๋์ด ๋ฉ๋๋ค. const express = require('express');const multer = require('multer');const path = require('path');const fs = require('fs');const multerS3 = require('multer-s3');const AWS = require('aws-sdk');const cors = require('cors')const { Image } = require('../models');const { isLoggedIn } = require('./middlewares');const router = express.Router();try { fs.accessSync('uploads')} catch (e) { console.log('uploads ํด๋๊ฐ ์์ผ๋ฏ๋ก ์์ฑํฉ๋๋ค.') fs.mkdirSync('uploads')}AWS.config.update({ accessKeyId: process.env.S3_ACCESS_KEY_ID, secretAccessKey: process.env.S3_SECRET_ACCESS_KEY, region: 'ap-northeast-2',});const upload = multer({ storage: multerS3({ s3: new AWS.S3(), bucket: 'codingpalette', key(req, file, cb) { cb(null, `original/${Date.now()}_${path.basename(file.originalname)}`) } }), limits: {fileSize: 20 * 1024 * 1024}, // 20MB});router.post('/', cors(), isLoggedIn, upload.array('image'), (req, res, next) => { // ์ด๋ฏธ์ง ์ ๋ก๋ // console.log(req.files); res.status(200).json(req.files.map((v) => v.location));})router.post('/test', (req, res, next) => { res.status(200).json({aa : 'ok'})});module.exports = router; ์ฝ์์ ํ์ธํ๋ ์ฒ์ ์ค๋ฅ์ ๋ค๋ฅธ ์ค๋ฅ๊ฐ ๋์ต๋๋ค. Access to XMLHttpRequest at 'https://api.codingpalette.com/image' from origin 'https://codingpalette.com' has been blocked by CORS policy: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.
- 0
- 9
- 1.1K
Q&A
์ด๋ฏธ์ง ๋ฑ๋ก์ CORS ๋ฌธ์ ๊ฐ ๋์ต๋๋ค.
ํ์ฌ app.js ์ฝ๋ ์ ๋๋ค. app.use(cors({ origin: 'https://codingpalette.com', credentials: true,})); domain: process.env.NODE_ENV === 'production' && '.codingpalette.com' ์ผ๋ก ๋ฑ๋ก์ด ๋์ด ์์ต๋๋ค const express = require('express'); const cors = require('cors'); const session = require('express-session'); const cookieParser = require('cookie-parser'); const passport = require('passport'); const dotenv = require('dotenv'); const morgan = require('morgan'); const path = require('path'); const hpp = require('hpp'); const helmet = require('helmet'); const userRouter = require('./routes/user'); const postRouter = require('./routes/post'); const postsRouter = require('./routes/posts'); const tagRouter = require('./routes/tag'); const imageRouter = require('./routes/image'); const portfolioRouter = require('./routes/portfolio'); const portfoliosRouter = require('./routes/portfolios'); const db = require('./models'); const passportConfig = require('./passport'); dotenv.config(); const app = express(); db.sequelize.sync() .then(() => { console.log('db ์ฐ๊ฒฐ ์ฑ๊ณต') }) .catch(console.error) passportConfig(); if (process.env.NODE_ENV === 'production') { app.set('trust proxy', 1); app.use(morgan('combined')); app.use(hpp()); app.use(helmet()); app.use(cors({ origin: 'https://codingpalette.com', credentials: true, })); } else { app.use(morgan('dev')); app.use(cors({ origin: true, credentials: true, })); } app.use('/', express.static(path.join(__dirname, 'uploads'))); app.use(express.json()); app.use(express.urlencoded({ extended: true })); app.use(cookieParser(process.env.COOKIE_SECRET)); app.use(session({ saveUninitialized: false, resave: false, secret: process.env.COOKIE_SECRET, proxy: true, cookie: { httpOnly: true, secure: true, domain: process.env.NODE_ENV === 'production' && '.codingpalette.com' }, })); app.use(passport.initialize()); app.use(passport.session()); app.get('/', (req, res) => { res.send('hello express'); }); app.use('/user', userRouter); app.use('/post', postRouter); app.use('/posts', postsRouter); app.use('/tag', tagRouter); app.use('/image', imageRouter); app.use('/portfolio', portfolioRouter); app.use('/portfolios', portfoliosRouter); app.listen(5000, () => { console.log('์๋ฒ์คํ์ค') });
- 0
- 9
- 1.1K




