提问者:小点点

很难得到Axios。post发送我的表单数据


这是我在这里的第一篇文章,尽管我一直在读,所以请用各种方式纠正我,我可能问得不对。我正在构建一个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中回显$u文件时,它显示为一个空数组。


共1个答案

匿名用户

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