0
이미지를 cloudy 형식으로 업로드하고 싶습니다. NodeJS API에 내 모델이 있습니다.이 모델에는 이미지라는 입력란이 있는데이 입력란은 문자열이며 여기서 url은 cloudinary의 응답으로 수신합니다.이미지를 구름에 업로드하는 방법
여기 여기, 내 model.js
'use strict';
const mongoose = require('mongoose');
const CursoSchema = mongoose.Schema({
name: {
type: String,
required: true
},
image: {
type: String,
},
description: {
type: String,
required: true
}
});
module.exports = mongoose.model('Curso', CursoSchema);
그리고 내 controller.js입니다 내가 URL을 저장해야 할 경우, 내가 cloudinary 문서의 방법으로 시도이다.
var imageFile = req.files.image;
cloudinary.uploader.upload(imageFile.path, function(result){
if (result.url) { res.status(200).send({url: result.url});
}else {
console.log('Error uploading to cloudinary');
}
});
하지만 방금 이미지를 업로드했습니다. 여기 내 controller.js
'use strict';
const Curso = require('../models/curso');
const config = require('../config');
const cloudinary = require('cloudinary');
cloudinary.config({
cloud_name: 'something',
api_key: 'somthingelse',
api_secret: 'andotherthing'
})
function saveCurso(req, res) {
let curso = new Curso();
let params = req.body;
curso.name = params.name;
curso.description = params.description;
//How to get the image and upload it to cloudinary
curso.save((err, cursoSaved)=>{
if(err){return res.status(500).send({message:'Error'});}
if(!cursoSaved) return res.status(404).send({message: 'Empty'});
return res.status(200).send({curso: cursoSaved});
});
}
module.exports = {
saveCurso,
}
그리고 내 routes.js 파일입니다 : 나는 이름, 설명과 이미지의 데이터를 저장할
'use strict';
const express = require('express');
const api = express.Router();
const cursoController = require('../controllers/curso');
api.post('/curso', cursoController.saveCurso);
module.exports = api;
, 난에서 URL을 저장할 흐린.
나는 cloudinary에서 일부 이미지를 저장하지만 내 이미지 필드에참고 만 URL을 저장하는 방법을 찾을 수 없습니다 : 나는 몸 파서를 사용하고 있는데이 내 app.js입니다
'use strict';
const bodyParser = require('body-parser');
const express = require('express');
const app = express();
const curso_routes = require('./routes/curso');
app.use(bodyParser.urlencoded({extended:true}));
app.use(bodyParser.json());
app.use('/api', curso_routes);
module.exports = app;
어떻게 우편 발송자와 테스트 할 수 있습니까? – SupineDread89
'/ api/curso'에 게시물 요청을하고 본문이'form-data'이고 텍스트 대신 파일 중 하나를 입력으로 선택하십시오. 위의 예에 따르면, 키는 'content'이고 값은 이미지입니다. –
사실 나는 오류가 있었지만 로그에 남았습니다. 다른 필드가 필요하면 어디에 있습니까 – SupineDread89