2015-05-20 17 views
0

因此我已經開始爲Swift中的網站構建一個應用程序。主要目標是擁有一個iOS應用程序,它可以接收通知(以網站的JSON形式)並可以顯示網站的所有功能。 所以我可以登錄並從應用程序註冊到我的數據庫,但事情是我不明白如何取出我的會話登錄並顯示在UIWebView中。所以用戶只需登錄,他就可以通過他的賬戶查看網站。我唯一能做的就是把網站作爲一個客人展示。把PHP Session拿出來在Swift中顯示一個網站

有人可以幫我嗎?

+0

你有一個你到目前爲止嘗試過的代碼示例嗎? – Kmeixner

+0

@Kmeixner:嗨,是的,但代碼太長了,它只是在PHP和Swift變量中獲得「登錄名」和「密碼」,我無法在這裏顯示所有內容。但是現在我不知道我能做些什麼來顯示帶有會話的網站(類似於UIWebView)? – Bankkay

回答

1

據我所知UIWebView不會爲您的網站存儲/發送任何cookie(會話)。這意味着你總是沒有通過身份驗證。

爲了完成您的任務,您需要創建自己的cookie處理機制。

  1. 您需要保存服務器發送給您的auth cookie,以響應HTTP頭,例如,

    Set-Cookie: JSESSIONID=ABAD1D;

  2. 然後,你需要做任何需要的請求,並手動將餅乾頭在你的請求頭例如申請

    Cookie: JSESSIONID=ABAD1D

  3. 保存響應的地方,並呈現HTML中的WebView

底線:所有這些東西是一個巨大的開銷您的應用程序。相反,您需要使用不同的身份驗證方法和數據傳輸(衆所周知),專門爲iOS(和其他)應用程序編寫您的網站的API。

你想要做的是基本上創建一個小瀏覽器,我不認爲這是一個好主意。

+0

嗨,謝謝你的回答。哇,這樣做似乎很複雜。我在想這很容易。我不明白人們如何爲網站做iOS應用程序?他們是否再次創建所有內容,並只是提出網站數據庫的請求 – Bankkay

+0

實際上不是數據庫,而是API的web項目。我們也使用本地數據庫,通常我們使用iOS中特定的不同屏幕和UI成語進行設計,儘管它可以與您的Web部件具有類似的風格。由於iOS擁有本地數據庫和驚人的圖形用戶界面,因此使用這種應用程序比移動設備上的網站好得多。另外你有更少的流量。 –