【问题标题】:Having trouble getting Axios.post to send my form-data无法让 Axios.post 发送我的表单数据
【发布时间】:2019-08-02 08:25:43
【问题描述】:

这是我在这里的第一篇文章,尽管我一直在阅读它,所以请以各种方式纠正我,我可能没有正确地问这个问题。我正在构建一个 vue 应用程序,它将图像发送到我服务器上的一个文件夹。为了做到这一点,我尝试使用 Axios.post 将我的 formData 发送到我的 PHP 文件进行处理。我已经测试了 php.ini 中的权限是否正常工作(它们是,我有同一篇文章的另一个版本,它使用原始 php 而没有 ajax 请求,它工作正常,但在我试图加载的新窗口中加载避免)。

以下是我认为相关的内容。

Vue 组件

<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>

Vue.component('uploader1', {
	props:['yo'],
	template:
	`<div>
	  <label>
	   <div class="cButton">Artwork Image(1)</div>
	   <input class="hiddenInput" id="file" type="file" ref="file" @change="onFileChanged">
	  </label>
    <div class="cButton" @click="onUpload">Upload</div>
  </div>`,
	data(){
		return{selectedFile: null}
	},
	methods:{
		onFileChanged (event) {
    this.selectedFile = event.target.files[0]
  },
	onUpload() {
		const formData = new FormData()
		// formData.append('myFile', this.selectedFile, this.selectedFile.name)
		// console.log(this.selectedFile)
		// console.log(formData.get('myFile'))
		axios.post('http://asagiannini.com/crit/axios_upload.php', formData, {
            headers: {
              'Content-Type': 'multipart/form-data'
            }
          }).then(function(data){
              console.log(data.data);
            })
            .catch(function(){
              console.log('FAILURE!!');
            });
},
	},
})

我已经确认 formdata 附加工作正常。我已经确认 Axios 正在正确加载。我已经确认我的服务器支持文件上传,但我不知道为什么,当我在我的 php 中回显 $_FILES 时,它会显示为一个空数组。

【问题讨论】:

  • 是你最后一个版本的代码吗?为什么你注释掉了formData.append
  • 对不起,那些被我试图解决问题的东西注释掉了。实际上他们不应该。

标签: php ajax vuejs2 upload axios


【解决方案1】:

没关系,原来我的问题是我的 php 文件中有错字。对于那个很抱歉。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-17
    • 2020-08-17
    • 2020-04-11
    • 2015-11-20
    相关资源
    最近更新 更多