0
我有一個網站要求用戶提供其他網站的登錄憑證。這個網站是我的服務器的外部。像craigslist.com。用戶向我提供用戶名和密碼後,我希望能夠驗證這些憑據對該站點有效,否則我想讓用戶知道他錯誤地輸入了外部站點的憑證。有沒有辦法讓我做到這一點?我寧願如果解決方案是在asp.net(vb.net/aspx),但我願意與其他語言合作。如果必須的話,我會找到一種方法讓他們溝通。驗證外部網站的登錄憑證
我有一個網站要求用戶提供其他網站的登錄憑證。這個網站是我的服務器的外部。像craigslist.com。用戶向我提供用戶名和密碼後,我希望能夠驗證這些憑據對該站點有效,否則我想讓用戶知道他錯誤地輸入了外部站點的憑證。有沒有辦法讓我做到這一點?我寧願如果解決方案是在asp.net(vb.net/aspx),但我願意與其他語言合作。如果必須的話,我會找到一種方法讓他們溝通。驗證外部網站的登錄憑證
絕對。一個快速警告:你應該使用一個好的安全模型來保護用戶提供給你的這些祕密,這是一個不同而又複雜的話題。您承擔了存儲其憑據的責任,儘管數據有希望通過應用程序在存儲中進行加密,但您的應用程序有能力將其解密爲純文本,從而使您的應用程序承擔責任。您可能還想確保您沒有違反遠程網站的任何TOS。
但是對於這個問題,你基本上想要的是打開web請求來模擬用戶手動登錄到其他站點的代碼。您將代表您的用戶從您的.NET代碼發佈該遠程服務器上的登錄表單。一種用於編寫代碼策略:
您正在尋找在.NET框架中的類是HttpWebRequest
。下面是一些可以讓你的代碼開始的例子:
所以,如果我理解正確的話我必須通過一個模擬的一個請求通過自定義HTTP標頭將由瀏覽器從網頁發送。然後,我解析從遠程服務器發送的響應,表明它是成功的。我永遠不會想到這樣做。我對TOS的東西並不是100%肯定的,但當我到達那裏時我會穿過那座橋。爲了滿足我的需求,我必須爲您提供足夠寬泛的解決方案,以便我可以與其合作。喝彩。 – Vikk 2014-09-05 18:37:29
是的,我會對此進行擴展,並說您正在設置多個HTTP標頭以及HTTP請求正文 - 您希望您的編程Web請求看起來完全像通過瀏覽器進行的手動Web請求。 HttpWebRequest類可以讓你通過設置各種屬性等來控制HTTP標頭和主體。使用Fiddler將您的程序化請求與手動請求進行比較,直到消除差異,並且您將順利完成任務。如果遠程網站的架構迫使您爲了兩個要求而引用原因,那麼也應該納入。 – 2014-09-05 19:23:37