目前在做第三方登入,碰到一個問題,就是在使用者確認提交請求後,會返回一個CODE,不論QQ還是還是新浪都會返回這個CODE參數。那麼這三個登入的流程處理頁面我都指向同一個地址,問題就是怎麼知道是QQ還是新浪或者發回來的code,然後再調用相關方法進行登入。
不會是做三個地址頁面吧?
回複內容:
目前在做第三方登入,碰到一個問題,就是在使用者確認提交請求後,會返回一個CODE,不論QQ還是還是新浪都會返回這個CODE參數。那麼這三個登入的流程處理頁面我都指向同一個地址,問題就是怎麼知道是QQ還是新浪或者發回來的code,然後再調用相關方法進行登入。
不會是做三個地址頁面吧?
第三方登入之前,也就是授權的頁面,都是需要傳遞一個 redirect_url 的參數(也就是你的回調地址),在這個回調地址中,你除了可以接收CODE,還是可以接收其他參數的,你可以加入其他參數進行判斷。
你可以在傳入的 redirect_url 後面直接攜帶一個參數標記QQ還是微博或者是其他平台,那麼在回調到你的地址時,這個參數依然存在,你可以通過這個參數進行判斷。
看你的第三方api 是否支援傳自己的參數 如果支援 你自己傳一個參數 來判斷來源即可 如果不支援 那就配不同的地址 其實你這個地址 只是做一個中轉 最終走同一個邏輯 就可以了 代碼複雜度不會增加很多
其他的不知道,請求的時候可以傳一個state參數,會把這個參數回調回來
/** * 單向鏈表建構函式 */function LinkedList() { /** * 單向鏈表中節點的建構函式 * @param {Any} element 要傳入鏈表的節點 */ var Node = function(element) { this.element = element; //下個節點的地址 this.next = null; } //單向鏈表的長度 var length = 0; //單向鏈表的頭結點,初始化為NULL var head = null;}
問:今年的ECUG大會你為什麼選擇“一周一語言”這個演講主題?ECUG Con 2015有什麼特色?
嗯,你這個問題有意思,是今天採訪最讓我興奮的話題了。為什麼選擇“一周一語言”,有幾個原因吧。一方面彌補下中國人沒有自己流行語言的遺憾,我認為qnlang(不過我在內部已經改名為qlang,即Q語言)具有流行起來的基因。qlang的定位很獨特:它是Go語言的夥伴語言。作為和Go語言互動最便捷的語言,在Go語言成為雲端運算的事實標準時,在很多場合我們都可以用qlang作為輔助語言完成對系統的靈活定製需求。比如,如果我們用Go語言開發爬蟲,我們可以用qlang來定製爬蟲的諸多策略,怎麼做到這一點我在演講中會給出示範。
另一方面大部分人學習的時候太功利,不太重視學習基本功,比如編譯原理。事實上我認為編譯原理是非常非常重要的一門基礎知識。某種程度上說可能是名字不夠好,我個人更喜歡把這個領域叫做文本處理。文本處理應用範圍非常廣泛,想一下我們今天實際生產環境中,什麼地方不需要文本處理?在我們現在很火的“大資料”領域,文本處理顯然是很重要的基礎。
ECUG Con 2015從議題上看,技術更加細粒度化了,很多講師都選了一個很小的知識點來展開講,把話題講透徹,這是很好的進步。比如洪強寧只講網路,我只講文本處理,劉奇講Raft(有趣的是Etcd作者李響講Paxos,他們兩的議題結合起來聽一定很有意思)。比起很泛泛地說XX實踐,這樣的議題大家可以得到更多乾貨。
可能這個問題太小白了,我沒有Google到解決方案。。。初學者,安裝好PHP、MySQL就已經蒙圈了,求各位大大原諒我提這麼蠢的問題。感謝感謝!