2016-09-07 60 views
0

我有一個啓動器站點,可以啓動我擁有的不同Angular2應用(可能位於不同的域),並且希望通過請求主體傳遞配置詳細信息。是否有可能發送POST請求到一個angular2應用程序,以便我可以發送正文數據?如果是的話,我如何實現一個組件?聽衆?路由器?接受這些數據?在Angular2中閱讀請求正文

+0

我認爲這個問題是這麼過寬。您無法將POST請求發送到在瀏覽器中運行的應用程序。瀏覽器(也是Angular應用程序)可以將POST請求發送到服務器。 –

+0

如果它發送POST請求以初始加載應用程序(在開始運行之前)該怎麼辦?有沒有辦法讓最頂級的app.component接受構造函數或onInit中的數據呢? – Felix

+0

從啓動程序中將應用程序加載到iframe中* – Felix

回答

0

您可以傳遞數據作爲應用程序url的查詢參數,然後使用該應用程序內的angular2路由器來提取數據。

看看這有助於:https://angular.io/docs/ts/latest/guide/router.html#!#query-parameters

sessionId = this.route.queryParams.map(params => params['session_id'] || 'None'); 
+0

感謝Luis。我最終可能會使用參數,但是,目標是隱藏URL中的數據,因此它不會被記錄 - 因此在加載應用程序時通過body發送它。我不確定這是否可能。 – Felix

+0

@Felix如果你有權訪問爲你的應用程序提供服務的代碼服務器端,你可以在返回它之前在html或js代碼中注入東西。另一個選項是加密您的查詢字符串以隱藏數據。 –

+0

不幸的是,它是無服務器實現(AWS)=/ – Felix