如何将 url 中的图像保存到资产文件夹中
How to save image from url into assets folder
我正在使用 Ionic 和 Cordova 开发我的第一个 Android 应用程序,我需要从 REST api 检索图像并将其存储在我的设备上,这样我什至可以使用它如果设备离线。
这是我当前使用的版本:
离子:
Ionic CLI:6.10.1 (C:\Users\agusd\AppData\Roaming\npm\node_modules@ionic\cli)
离子框架:@ionic/angular 5.3.1
@angular-devkit/build-angular:0.901.12
@angular-devkit/schematics:9.1.12
@angular/cli:9.1.12
@ionic/angular-工具包:2.3.0
电容:
电容器 CLI:2.4.0
@capacitor/core:2.4.0
科尔多瓦:
Cordova CLI:9.0.0 (cordova-lib@9.0.1)
科尔多瓦平台:android 8.1.0
Cordova 插件:cordova-plugin-ionic-keyboard 2.2.0,cordova-plugin-ionic-webview 4.2.1,(和其他 4 个插件)
我正在遵循适用于 Ionic 3 的指南,但我无法使其适用于我当前的 Ionic 版本。
到目前为止,我已经设法获得包含 URL 的 JSON 对象,但我不知道如何下载该图像并将其存储到我的资产文件夹中。
我的代码是这样的:
api.service.ts:
apiURL = 'my api url...';
getDiarios() {
const diarioArgs = {
method: 'GET',
mode: 'cors',
headers: {
'Content-Type': 'application/json' }
};
return this.http.get(this.apiURL, diarioArgs);
}
然后我有这个函数,它调用服务并检索响应:
data: any;
lastDiario: any;
lastID = 0;
loadLastDiario() {
try {
this.apiService.getDiarios().subscribe(
(data) => {
this.data = data;
for (const item of this.data.content) {
if (item.id > this.lastID) {
// I get the object with the largest id, which means is the last uploaded
this.lastID = item.id;
this.lastDiario = item;
}
}
console.log(this.lastDiario);
for (const item of this.lastDiario.archivos) {
// Here is where I need to save every item of "archivos" into my assets folder or any other
// Every item has an URL property that I can get through **this.lastDiario.archivos.url**
}
}
);
} catch (error) {
console.log("Couldn't connect to the service")
}
}
如果有人能帮助我,我是 Ionic 的新手,Angular 总的来说,所以任何建议都会有所帮助!
资产文件夹在 运行 时只读。
您只能在设计时将文件存储在其中。
我正在使用 Ionic 和 Cordova 开发我的第一个 Android 应用程序,我需要从 REST api 检索图像并将其存储在我的设备上,这样我什至可以使用它如果设备离线。
这是我当前使用的版本:
离子:
Ionic CLI:6.10.1 (C:\Users\agusd\AppData\Roaming\npm\node_modules@ionic\cli) 离子框架:@ionic/angular 5.3.1 @angular-devkit/build-angular:0.901.12 @angular-devkit/schematics:9.1.12 @angular/cli:9.1.12 @ionic/angular-工具包:2.3.0
电容:
电容器 CLI:2.4.0 @capacitor/core:2.4.0
科尔多瓦:
Cordova CLI:9.0.0 (cordova-lib@9.0.1) 科尔多瓦平台:android 8.1.0 Cordova 插件:cordova-plugin-ionic-keyboard 2.2.0,cordova-plugin-ionic-webview 4.2.1,(和其他 4 个插件)
我正在遵循适用于 Ionic 3 的指南,但我无法使其适用于我当前的 Ionic 版本。
到目前为止,我已经设法获得包含 URL 的 JSON 对象,但我不知道如何下载该图像并将其存储到我的资产文件夹中。
我的代码是这样的:
api.service.ts:
apiURL = 'my api url...';
getDiarios() {
const diarioArgs = {
method: 'GET',
mode: 'cors',
headers: {
'Content-Type': 'application/json' }
};
return this.http.get(this.apiURL, diarioArgs);
}
然后我有这个函数,它调用服务并检索响应:
data: any;
lastDiario: any;
lastID = 0;
loadLastDiario() {
try {
this.apiService.getDiarios().subscribe(
(data) => {
this.data = data;
for (const item of this.data.content) {
if (item.id > this.lastID) {
// I get the object with the largest id, which means is the last uploaded
this.lastID = item.id;
this.lastDiario = item;
}
}
console.log(this.lastDiario);
for (const item of this.lastDiario.archivos) {
// Here is where I need to save every item of "archivos" into my assets folder or any other
// Every item has an URL property that I can get through **this.lastDiario.archivos.url**
}
}
);
} catch (error) {
console.log("Couldn't connect to the service")
}
}
如果有人能帮助我,我是 Ionic 的新手,Angular 总的来说,所以任何建议都会有所帮助!
资产文件夹在 运行 时只读。
您只能在设计时将文件存储在其中。