如何解决EXPO反应本机中的上传文件问题
嗨,我尝试通过expo上传文件:
console.log给我这个错误“通过req.file()
的流文件上传只能通过Skipper通过HTTP进行”,但是当我与邮递员一起尝试时,它是可行的。我在后端使用sailsJs
这是我的博览会反应代码
const[imageUri,setImageUri]=useState()
const[imageUpload,setImageUpload]=useState()
const selectImage = async()=>{
try {
const result = await ImagePicker.launchImageLibraryAsync();
if(!result.cancelled)
setImageUri(result.uri)
setImageUpload(result)
} catch (error) {
console.log('Error running on image')
}
}
const handleSubmit = async () => {
const dataDemande = {
projectTitle: titre,material: materiel,description: description,projectType: checked,lieuRendezvous: value_3,idClient: props.route.params.id,model: imageUpload
};
console.log(dataDemande);
var res = await demandeClient(dataDemande);
console.log(res);
props.navigation.navigate("Tableau de bord - Client");
};
这是后端的代码
findCouturierAndCreateDemande: async function (req,res) {
var recherche = req.body
req.file('model').upload({
adapter: require('skipper-gridfs'),uri: 'mongodb://localhost:27017/image'
},async function (err,filesUploaded) {
if (err) return res.serverError(err);
console.log(filesUploaded[0].fd)
var couturier = await Client.find({
where: {
isCouturier: true,ville: { contains: recherche.ville },adresse: { contains: recherche.adresse },rue: { contains: recherche.rue },},})
var img = await Image.create(_.omit(filesUploaded[0],['status','field','extra'])).fetch()
var newDemande = await Demande.create({
titre: recherche.projectTitle,materiel: recherche.material,description: recherche.description,service: recherche.projectType,positionActivity: recherche.lieuRendezvous,client: recherche.idClient,modelImage: img.id
}).fetch()
console.log(img)
return res.ok({couturier,newDemande})
});
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。