2016-08-19 92 views
0

我正在開發我的android應用程序和網站的登錄API。但我不確定這兩個API是相同還是不同。對於網站,登錄成功後,頁面應該重定向到另一頁面。如果重定向來自服務器端,那麼我不能使用它的android應用程序。網站和移動應用的登錄API應該相同還是不同?

我在服務器端使用Spring框架。

任何人都可以建議,什麼應該是最好的方法,以及其他網站和他們的移動應用程序如何工作?

+0

或者你應該添加一個額外的參數來檢查它是什麼平臺。您使用桌面登錄的示例,現在在您的api請求中包含paltform參數,以檢查天氣是否來自移動設備。然後改變你的服務器端代碼,如果手機只是返回true或false,如果不包含移動重定向。類似的東西,但我相信有一個更好的方法來做到這一點。儘管我的想法。 –

回答

1

移動和網頁API應該是相同的優化方式。正如你在服務器上的Web重定向中提到的那樣,它也可以在移動設備上進行管理,但是你必須發送一些信號以及來自api的重定向的響應。

+0

在Spring MVC中,我可以在REST API中使用@ResponseBody作爲返回數據,但是如果我必須重定向,我該如何使用它呢? – charlie156

+0

@ binay37你可以從這裏獲得幫助http://stackoverflow.com/questions/17955777/redirect-to-an-external-url-from-controller-action-in-spring-mvc –

+0

它僅用於重定向。但我沒有得到如何在需要時使用相同的api返回json數據,而不是重定向。 – charlie156

0

當您有不同的客戶端需要對相同的服務器響應(即您的登錄名)作出不同反應時,應將其留給客戶端以決定是否重定向。否則你的後端會對客戶端產生潛在的依賴關係,這可能暗示了糟糕的設計。

PS .:當然,如果您的客戶不知道應該重定向的位置,您應該在響應中加入可能的鏈接/選項。然而,實際的決定仍然由您的客戶完成。

0

啊,app api與pc api不同,我們不控制那個session,因爲我不知道network.so,一般我們設計一個token,把httpRequest放在一邊。

我的英語真是太棒了!

0

我認爲爲兩者分別製作api會更好,因爲請求和響應方法會有所不同,但內部都可以使用相同的代碼。

對於網站,它會返回HTML數據或將重定向到不同的頁面,而對於android應用程序,它將返回JSON數據。

謝謝Mohit。我可以使用鏈接中給出的單個API:
Spring MVC either sending JSON or Redirecting to another page

+1

這取決於您的要求,但在大多數情況下,它們對於每個平臺都應該是相同的,因爲那樣很容易使其保持高效。 –

相關問題