小程序上傳接口wx.uploadFile小坑

如果後端接口,上傳文件的api是以put請求方式提交,比如在更新頭像的場景下。

將本地資源上傳到服務器。

客戶端發起一個 HTTPS POST 請求,其中 content-typemultipart/form-data

  • 目前好像不支持在小程序端自定義請求方式,所以對應的,我們後端接口也要調整爲

    post請求方式

以uni-app爲例

// 上傳新頭像
uni.uploadFile({
	url: setting.appBaseUrl + '/system/user/app/uploadAvatar',
	filePath: tempFacePath,
	name: 'file',
	header: {
		Authorization: 'bearer ' + getToken()
	},
	success(res) {
		// 由於res.data是一個json字符串,因此需要作轉換
		let data = JSON.parse(res.data);
		if (data.code === 200) {
			setUserInfo(data.data);
			// 參考文檔 https://uniapp.dcloud.io/api/router?id=navigateback
			uni.navigateBack({
				delta: 1
			})
		} else if (data.code === 500) {
			uni.showToast({
				mask: true,
				duration: 2000,
				image: '../../static/icos/error.png',
				title: '更換頭像失敗!'
			})
		}
	},
	complete() {
		uni.hideLoading();
	}
});
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章