handleUploadSuccess(response) { let data = { albumId: this.album.id, url: response.data.url }; let url = 'http://localhost:9180/pictures/add-new'; console.log('url = ' + url); let formData = this.qs.stringify(data); console.log('formData = ' + formData); let localJwt = localStorage.getItem('localJwt') this.axios .create({ 'headers':{ 'Authorization' : localJwt } }) .post(url, formData).then((response) => { let jsonResult = response.data; if (jsonResult.state == 20000) { this.loadPictureList(); } else { this.$alert(jsonResult.message, '警告', { confirmButtonText: '确定', callback: action => { } }); } }); }, // 加载相册的图片列表 loadPictureList() { let url = 'http://localhost:9180//picture/list?queryType=all&albumId=' + this.album.id; console.log('url = ' + url); let localJwt = localStorage.getItem('localJwt') this.axios .create({ 'headers':{ 'Authorization' : localJwt } }) .get(url).then((response) => { let jsonResult = response.data; if (jsonResult.state == 20000) { this.pictureList = jsonResult.data.list; } else { this.$alert(jsonResult.message, '警告', { confirmButtonText: '确定', callback: action => { this.$router.push('/sys-admin/product/album'); } }); } }); }
时间: 2024-02-15 11:28:48 浏览: 21
根据你提供的代码,可以看到 `handleUploadSuccess` 函数中使用了一个 `response` 参数,但是没有进行有效性检查,这可能会导致在上传失败时出现类似的 TypeError 错误提示。
你可以尝试在调用 `handleUploadSuccess` 函数时,先检查 `response` 参数是否存在,以及它是否具有 `data` 对象和 `url` 属性,例如:
```javascript
handleUploadSuccess(response) {
if (response && response.data && response.data.url) {
// ...
} else {
console.error('Invalid response data:', response);
}
// ...
}
```
另外,还需要注意在传递数据给后端的时候,需要将数据格式化为符合后端要求的格式,例如使用 `FormData` 对象或者 `qs` 库进行序列化,具体实现方式需要根据后端 API 的要求来进行选择和调整。
相关问题
albumId: name: photo:file://D:\fb\易图助手1.16\又拍上架\Special YEEZY\350 Orange 4-12\IMG_3211 20210504-011122.jpg
感谢提供的信息。根据你的描述,你想要创建一个包含相册ID、名称和照片的对象,并且照片的路径是 `file://D:\fb\易图助手1.16\又拍上架\Special YEEZY\350 Orange 4-12\IMG_3211 20210504-011122.jpg`。
在Java中,你可以使用以下代码创建一个包含相册ID、名称和照片的对象:
```java
public class Album {
private int albumId;
private String name;
private String photo;
public Album(int albumId, String name, String photo) {
this.albumId = albumId;
this.name = name;
this.photo = photo;
}
// Getters and setters
public int getAlbumId() {
return albumId;
}
public void setAlbumId(int albumId) {
this.albumId = albumId;
}
public String
filename = 'D:\\study\\喜马拉雅\\评书' if not os.path.exists(filename): os.mkdir(filename) mulu_dizhi = 'https://www.ximalaya.com/revision/album/v1/getTracksList?albumId=30210574&pageNum=1&sort=0&pageSize=30' headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36' } mulu_xinxi = requests.get(mulu_dizhi, headers=headers).json() mulu_xinxi = mulu_xinxi['data']['tracks'] # print(mulu_xinxi) for yinpin_xinxi in mulu_xinxi: # print(yinpin_xinxi) yinpin_title = yinpin_xinxi['title'] print(yinpin_title) play_dizhi = f'https://www.ximalaya.com/revision/play/v1/audio?id={yinpin_xinxi["trackId"]}&ptype=1' yinpin_data = requests.get(play_dizhi, headers=headers).json() # print(yinpin_data) yinpin_dizhi = yinpin_data['data']['src'] print(yinpin_dizhi)
这段代码是用来下载喜马拉雅上某个专辑的音频文件。代码首先创建一个目录,然后通过发送HTTP请求获取专辑的音频列表信息。接着遍历音频列表,获取每个音频的标题和播放地址。最后,打印出每个音频的标题和下载地址。
请注意,这段代码使用了`os`、`requests`等库,你需要确保已经正确导入这些库。另外,`mulu_dizhi`是专辑的接口地址,你可以根据需要修改为自己想要下载的专辑。