假设我有一个在 localhost:4200 上运行的Angular应用程序,如何将数据传递到Angular应用程序以便它可以使用此数据?
例如,我的Angular应用中的路由是这样配置的(在 app.module.ts 中):
...
const appRoutes: Routes = [
{ path: '**', component: DownloadZipFormComponent }
];
@NgModule({
declarations: [
AppComponent,
DownloadZipFormComponent
],
imports: [
RouterModule.forRoot(
appRoutes,
{ enableTracing: true }
),
BrowserModule,
HttpClientModule,
ReactiveFormsModule
],
providers: [],
bootstrap: [AppComponent]
})
...
因此,浏览器地址栏中以 localhost:4200 / 开头的所有网址都将与我的 DownloadZipComponent 并打开与其相关的html页面。
这就是我想做的:访问 localhost:4200 时,我想向其中传递一些数据,以便页面被显示可以使用此数据来呈现页面。更确切地说,我想传递一个json数组,其中每个项目都是一个远程URL,我可以从该URL下载文件(例如this one),然后我要我的组件 DownloadZipComponent ,以使用此json数组在网页中显示复选框列表,以便用户可以通过选中和取消选中复选框来选择要下载的文件。 (我使用jszip来完成工作:感染文件===>压缩===>下载)
据我所知,URL的限制长度为2048个字符,但是我想作为参数传递给url的json数组的长度,例如 localhost:4200?jsonArray =.。 。 可能超过2048个字符。
简而言之,三个问题:
如何将我上面提到的json数组正确传递给Angular应用?
我的Angular应用程序如何使用我传递给它的json数组(使用Angular路由机制)?
是否可以使用POST方法来访问我的Angular应用程序,这样我就不必担心“ 2048个字符的长度”限制 网址查询了(因为我可以将数据放入正文中)?如果是这样,我的Angular应用程序如何从POST方法主体中检索数据?