您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關詳解php流程控制中的主動與被動,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
什么是主動與被動. 舉個例子吧. 你跑去boss辦公室要求要加工資, 這就是主動, 無論是從你自身角度來看, 還是boss角度來看, 你都是主動的, 是積極樂觀的一面. 假如boss讓你去辦公室, 然后讓你把淘寶架構出來, 給你漲20%工資, 這就叫被動. 相信承諾了你就被動. 主動與被動簡單就這樣理解. 而程序流程中也會碰到如此難堪的主動與被動問題. 我們看示例.
A clier
當buy qq購買商品成功后, 通知QQ主服務器. 通過http協議.
file_get_contents('http://www.qq.com/api.php?add_saleinfo=buy_qq&orderid=12345&pay=888&email=a@qq.com');
代碼運行在buy.qq.com上面, 理解上來說是安全的, 但事實呢? 假如某人散發了此接口, 后果將不可估計. 人人都可以偽造訂單信息植入到qq.com. 無論你是如何限制來路, 數據檢查. 退一萬步, 危險的是寫這代碼的人. 那大家都會問, 既然是寫代碼的人, 權限已經很大,怎么防止得了? 這就需要由被動(qq.com) 變主動. http://www.qq.com/api.php?add_saleinfo=buy_qq修改成不再接收任何的訂單信息. 而是token值. 收到token值后, 接口回調buy.qq的查詢接口, 然后再入庫. 普通用戶再也創造不出token值, 就算知道buy.qq的查詢接口, 也不可能影響到qq.com, 作為主體qq.com 基本上屬于主動, 不會時刻在混亂入庫, 而是主動分析, 思考入庫.
道理相同, 淘寶客玩家也有這個問題. 比如以前暴出來的部分瀏覽器修改網頁中的pid值, 讓用戶損失慘重. 這就是被動的結果. php是這樣寫的, php 請求淘寶api接口,接收到商品信息, 里面就有商品購買鏈接, 正正是這個購買鏈接讓站長變成了被動. 在頁面直接href這個鏈接的用戶都有可能被人采集, 被瀏覽器修改pid. 接下來, 你是懂的, pid代表金錢. 后期有人已經想到了這個問題, 就采取了被動變主動的做法, 防止bug產生. 就是將商品鏈接不直接顯示, 而通過一個php修改. 用戶看到的url類似: www.qq.com/tao/buy.php?sid=aaaa333 sid肯定不是pid值, 所有工作都由buy.php來承載, 主動承擔分析及安全檢測工作.
QQ 互聯2.0 目前已經廣泛應用在互聯網站點上, 作為用戶數據主心的graph.qq.com如何保障用戶安全呢? 在保障訪問速度的前提下也要完善安全. QQ登錄目前的流程如下: 首先由appid appkey callbackurl組合成一串鏈接, 然后跳轉到qq.com. 這就是為什么許多站點直接訪問 qqlogin.php就能夠跳轉到qq登錄頁, 因為這參數都是固定的, 安全性還算可以. 登錄過程仍然在qq.com, 這就是phper經常談到的單點登錄. 登錄成功后會直接跳到callbackurl頁上, callbackurl此時得到的信息仍然不足以證明用戶登錄成功了, 僅僅得到了token值, 所以進入第二步, 用token值去qq api接口上查詢用戶openid, 完成登錄. 這樣, QQ就得主動, 查詢結果并不簡單是成功與否, 而是相應的參數及提示信息, 無論后期如何增加, 都可以兼容. 騰訊掌握著主動權, 這對于上億用戶量的企業來說是非常重要的. 內部安全還有判斷域名與appid對應, token過期檢查, ip限制. 技術層面來看騰訊是有的.
看完上述內容,你們對詳解php流程控制中的主動與被動有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。