一章介紹了通過(guò)分享好友實(shí)現(xiàn)微信跳轉(zhuǎn),這一章將介紹通過(guò)掃碼實(shí)現(xiàn)微信跳轉(zhuǎn)。
前提:從微信公眾號(hào)那邊獲取appid,secret,grantType三個(gè)參數(shù)備用。
該接口主要是獲取能重定向到掃碼后頁(yè)面的接口鏈接。
@GET
@Path(value = "getData")
@Produces(MediaType.APPLICATION_JSON)
public Response getData() {
Map<String, String> result = new HashMap<>();
try {
//......業(yè)務(wù)代碼......
String recUrl = "https://XXXX.com/項(xiàng)目名/oauth";//實(shí)現(xiàn)重定向的連接,該接口實(shí)現(xiàn)看第3節(jié)講
result.put("url", recUrl);
return Response.ok(result).build();
} catch (Exception e) {
result.put("code", 0);
result.put("msg", "異常");
return Response.ok(result).build();
}
}
該頁(yè)面可以通過(guò)掃碼進(jìn)行跳轉(zhuǎn),或者復(fù)制鏈接在微信中打開(kāi)實(shí)現(xiàn)跳轉(zhuǎn)。
<input style="width: 1px;height: 1px;" id="url" value="" type="text" />
<div id="root">
<div id="pic">
<div id="Code"></div>
</div>
<div id="txt">掃碼跳轉(zhuǎn)或者識(shí)別圖片跳轉(zhuǎn)</div>
<div id="copyLink">
復(fù)制鏈接(微信中點(diǎn)擊鏈接可直接跳轉(zhuǎn))
</div>
</div>
function convertCanvasToImage() {
var image = new Image();
var canvas = document.getElementsByTagName('canvas')[0];
image.src = canvas.toDataURL("image/png");
return image;
}
$(function() {
//可以直接復(fù)制鏈接在微信中,然后點(diǎn)擊鏈接可跳轉(zhuǎn)到與掃碼的同一個(gè)界面
var url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid="
+ appid + "&redirect_uri=" + linkUrl; //linkUrl是后臺(tái)getData方法的url
+"&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect";
$("#url").val( url);
$("#pic").qrcode({
render: "canvas", //table方式
width: 170, //寬度
height: 170, //高度
text: url //任意內(nèi)容
});
var img = convertCanvasToImage();
$("canvas").remove();
$('#Code').append(img);
$("#copyLink").click(function() {
var copyText = $("#url");
copyText.select();//選擇
document.execCommand("Copy");//執(zhí)行復(fù)制
alert("復(fù)制成功!");
})
});
微信自動(dòng)調(diào)用oauth2/authorize接口,運(yùn)行完接口后得到一次性的code,會(huì)自動(dòng)重定向到redirect_uri?code=XXX&response_type=code&scope=snsapi_base&state=STATE&connect_redirect=1#wechat_redirect
該接口可通過(guò)一次性的code獲取用戶的openId,然后重定向到掃碼后的頁(yè)面。(微信會(huì)兩次回調(diào)這個(gè)接口,第一次的code是有值的,第二次code為空!)
題
在瀏覽器中瀏覽了網(wǎng)頁(yè)之后,下一步就是查看其HTML源代碼。盡管這種方法很簡(jiǎn)單,但仍然非常值得去做。查看源代碼有兩項(xiàng)作用;它可以幫助你發(fā)現(xiàn)最明顯的安全問(wèn)題,但最重要的是,它使你能夠?yàn)閷?lái)的測(cè)試建立一個(gè)比較基準(zhǔn)。對(duì)攻擊失敗之前和之后的源代碼進(jìn)行比較,你就能夠調(diào)整你是輸入,了解到哪些通過(guò)了,哪些沒(méi)有通過(guò),并再次嘗試。
解決方案
我們推薦使用Firefox,你已經(jīng)在2.1節(jié)中學(xué)會(huì)了它的安裝。首先瀏覽應(yīng)用中你所感興趣的網(wǎng)頁(yè)。
右擊,并選擇“查看源文件”或從菜單欄選擇“查看”→ "源文件"。
我們推薦Firefox的主要原因是因?yàn)樗牟噬@示。如圖3-1所示,使用這種顯示方式,HTML標(biāo)簽和屬性都要容易理解得多。相比之下,Internet Explorer在記事本中打開(kāi)網(wǎng)頁(yè)。就會(huì)難讀得多。
討論
作為比較基準(zhǔn),訪問(wèn)HTML源代碼會(huì)非常有幫助。最常見(jiàn)的Web漏洞涉及到向Web應(yīng)用提供惡意輸入以修改HTML源代碼。在測(cè)試這些漏洞時(shí),驗(yàn)證測(cè)試通過(guò)或失敗的最簡(jiǎn)單的方法就是檢查源代碼是否被惡意更改。
當(dāng)心一切未經(jīng)更改就寫(xiě)進(jìn)源代碼中的輸入。我們將在第8章討論輸入驗(yàn)證,然后許多應(yīng)用根本就不對(duì)輸入進(jìn)行驗(yàn)證。在開(kāi)始討論更加復(fù)雜的內(nèi)容之前,不妨在源代碼中搜索你剛剛提供的輸入。然后,使者將可能的危險(xiǎn)值作為輸入,比如HTML標(biāo)簽或JavaScript,并注意它是否未經(jīng)修改就直接顯示在源代碼中。如果是這樣的話,那么這就是個(gè)警示信號(hào)。
注意,你可以像搜索任何其他Firefox頁(yè)面那樣搜索HTML源代碼(根據(jù)具體情況,使用Ctrl+F或(Windows徽標(biāo)鍵)+F)。
在以后的秘訣和章節(jié)中,我們將使用工具來(lái)自動(dòng)搜索、解析和比較源代碼。記住基本要點(diǎn);通常,可以通過(guò)重復(fù)地手動(dòng)檢查源代碼以檢查怎樣做才能使它通過(guò)篩選程序或編碼找出漏洞。
注意:你在這里看到的靜態(tài)源代碼不能反映JavaScript或AJAX功能所做的任何更改。
搜索微信公眾號(hào):TestingStudio霍格沃茲的干貨都很硬核
#34;在整天手機(jī)不離手的今天,同學(xué)們有沒(méi)有遇到過(guò)由于自己的手機(jī)出現(xiàn)了來(lái)消息呼吸燈不亮的問(wèn)題,險(xiǎn)些錯(cuò)過(guò)與女神的約會(huì)的遺憾經(jīng)歷?看到此等"大事",樂(lè)于助人的小編怎能袖手旁觀,于是翻閱(qi)各(shi)種(ye)典(mei)籍(you),總結(jié)出手機(jī)呼吸燈不亮的原因分享給你們,開(kāi)個(gè)玩笑啦,正文開(kāi)始" ↓↓↓
? 原因一
手機(jī)沒(méi)有指示燈,部分手機(jī)為了追求顯示效果的極致體驗(yàn),給用戶提供更大的可視面積,取消了指示燈(如,插上充電器后屏幕上方?jīng)]有亮起三色燈,表示不支持指示燈)
? 原因二
手機(jī)在通話時(shí)或者手機(jī)亮屏?xí)r,來(lái)消息指示燈默認(rèn)不閃爍
? 原因三
如果手機(jī)在所有情況下來(lái)消息指示燈都不閃爍,可能是沒(méi)有開(kāi)啟收到通知時(shí)指示燈閃爍功能,需要進(jìn)入設(shè)置>通知中心>更多通知設(shè)置>收到通知時(shí)指示燈閃爍,打開(kāi)此開(kāi)關(guān)
? 原因四 如果您是僅微信或QQ國(guó)際版來(lái)消息不閃爍,可能是因?yàn)閼?yīng)用自身原因?qū)е聛?lái)消息不閃爍,可以將問(wèn)題反饋給三方應(yīng)用,關(guān)注應(yīng)用版本更新并及時(shí)升級(jí)最新版本
如果以上方法沒(méi)有解決您的問(wèn)題,建議需要提前備份好數(shù)據(jù),攜帶購(gòu)機(jī)憑證前往華為客戶服務(wù)中心檢測(cè)是否為硬件問(wèn)題了,同學(xué)們對(duì)于來(lái)消息指示燈/呼吸燈不閃爍的問(wèn)題還有什么疑問(wèn),也可以在帖子底下留言告訴小編哦~
注:文章來(lái)源于花粉俱樂(lè)部:https://club.huawei.com/thread-21303009-1-1.html
更多精彩,敬請(qǐng)關(guān)注頭條@榮耀手機(jī)來(lái)了和花粉俱樂(lè)部,了解最新產(chǎn)品資訊及信息!
*請(qǐng)認(rèn)真填寫(xiě)需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。