解决申请开发者office E5中无法发送手机验证码,reCaptcha加载失败
Posted 铃音yuy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决申请开发者office E5中无法发送手机验证码,reCaptcha加载失败相关的知识,希望对你有一定的参考价值。
关于申请开发者office E5中无法发送手机验证码的解决方案
文章目录
注册过程
这是我的亲身经历,可能对其他情况会不一样
第一次注册到验证手机号时,点击发送代码
死活没有反应,打开开发者工具的network
一栏发现没有任何请求发出
但是发现了有些资源请求失败,其中就包括reCaptcha
,打开百度一搜,大部分帖子说需要开魔法才能加载出来,于是我打开魔法重新加载
又到了验证手机号的阶段,发现仍然无法加载,网络中有这样的信息
加载失败原因
查询得知,为了防止网站被xss攻击,浏览器有非常严格的内容加载策略Content-Security-Policy(csp)
W3对csp的描述
MegaCorp Inc 的开发人员希望保护自己免受跨站点脚本攻击。他们可以通过确保其受信任的 CDN 是脚本可以加载和执行的唯一来源来降低脚本注入的风险。此外,他们希望确保没有插件可以在其页面的上下文中执行。以下政策具有这种效果:
Content-Security-Policy: script-src https://cdn.example.com/scripts/; object-src ‘none’
或者看这个[Content-Security-Policy]
(https://www.jianshu.com/p/528b6be7661c)
总之,csp策略阻止了reCaptcha的加载,我们看看申请E5网页的csp时如何描述的
可以看到有一大堆,但是可能正巧没有reCaptcha的网址,那我们添加上就好了
解决过程
我从百度上找到了一个方法,按他教程设置后
设置成功后仍然无法加载出验证,网页右下角多出了个白条。同时,一段时间后,提示加载验证失败
打开控制台,发现reCaptcha仍然被csp阻止了
那我们就去加一个csp
打开Header Editor
,编辑csp那条
输入新的代码
let rt = detail.type;
if (rt === 'script' || rt === 'stylesheet' || rt === 'main_frame' || rt === 'sub_frame')
for (let i in val)
if (val[i].name.toLowerCase() === 'content-security-policy')
let s = val[i].value;
s = s.replace(/googleapis\\.com/g, '$& https://gapis.geekzu.org');
//把这里的https://recaptcha.net改成https://www.recaptcha.net
s = s.replace(/recaptcha\\.google\\.com/g, '$& https://www.recaptcha.net');
//把这里的https://recaptcha.net改成https://www.recaptcha.net
s = s.replace(/google\\.com/g, '$& https://www.recaptcha.net');
s = s.replace(/gstatic\\.com/g, '$& https://*.gstatic.cn');
val[i].value = s;
改完后,问题成功解决
解决方案
首先按照Google 人机验证(reCaptcha)无法显示解决方案(可解决大多数 CSP 问题)的解决办法走一遍
这时便无需魔法即可打开reCaptcha
如果你仍然无法加载出来reCaptcha,就修改Header Editor
中的csp规则,将如下代码粘贴进去即可
let rt = detail.type;
if (rt === 'script' || rt === 'stylesheet' || rt === 'main_frame' || rt === 'sub_frame')
for (let i in val)
if (val[i].name.toLowerCase() === 'content-security-policy')
let s = val[i].value;
s = s.replace(/googleapis\\.com/g, '$& https://gapis.geekzu.org');
//把这里的https://recaptcha.net改成https://www.recaptcha.net
s = s.replace(/recaptcha\\.google\\.com/g, '$& https://www.recaptcha.net');
//把这里的https://recaptcha.net改成https://www.recaptcha.net
s = s.replace(/google\\.com/g, '$& https://www.recaptcha.net');
s = s.replace(/gstatic\\.com/g, '$& https://*.gstatic.cn');
val[i].value = s;
加载成功:
Android后台服务无法解析/访问outlook.office365.com,除非手机负责?
【中文标题】Android后台服务无法解析/访问outlook.office365.com,除非手机负责?【英文标题】:Background service in Android cannot resolve/access outlook.office365.com, unless phone is in charge? 【发布时间】:2018-09-07 19:37:13 【问题描述】:我一直在努力解决一个奇怪的问题。我有一个简单的代码,它通过 REST API 对 office365 进行身份验证并读取当天的日历条目。 当我的应用程序在前台运行时,代码运行良好。我得到所有日历事件,生成我的通知,一切都很好。 当我将应用程序置于后台时(该应用程序实际上是连接到 Android AlarmManager - AlarmManager.RTC_WAKEUP 并重复运行的后台服务),通知停止出现。当我插入调试电缆查看 Logcat 时,突然之间,即使我的应用程序仍在后台,通知也开始出现。我一拔掉电缆,它们就停止了。当我查看未插入电话时的调试日志时,这就是我所看到的。我使用 Volley 进行网络连接,在此之前我使用的是 okhttp3。以下是两者的日志:
排球:
03-28 16:47:56.822 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:47:56.822 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:03.899 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:03.900 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:08.930 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:08.931 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:13.959 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:13.959 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:18.989 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:18.990 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:24.028 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:24.034 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:29.068 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:29.070 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:34.100 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:34.100 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:39.115 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
03-28 16:48:39.116 27031-27685/com.microsoft.samples.outlookquickstart I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
okhttp3:
03-28 12:40:08.114 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: java.net.SocketTimeoutException: connect timed out
03-28 12:40:08.115 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.net.PlainSocketImpl.socketConnect(Native Method)
03-28 12:40:08.115 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:33 4)
03-28 12:40:08.115 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl. java:196)
03-28 12:40:08.116 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
03-28 12:40:08.116 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:356)
03-28 12:40:08.116 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.net.Socket.connect(Socket.java:586)
03-28 12:40:08.116 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.platform.AndroidPlatform.connectSocket(AndroidPlatform.java:69)
03-28 12:40:08.116 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.java:238)
03-28 12:40:08.116 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:158)
03-28 12:40:08.116 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
03-28 12:40:08.117 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.RealCall$AsyncCall.execute(RealCall.java:147)
03-28 12:40:08.118 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
03-28 12:40:08.119 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
03-28 12:40:08.120 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
03-28 12:40:08.120 10329-20079/com.microsoft.samples.outlookquickstart W/System.err: at java.lang.Thread.run(Thread.java:762)
我不确定是什么问题以及如何解决它。
关于问题是什么的任何想法?有人遇到过这个吗?我使用的是三星 Galaxy A5 2017。在其他品牌的手机上没有任何不同。
谢谢!
【问题讨论】:
【参考方案1】:对于可能遇到相同问题的其他人:
经过一番挣扎,我找到了答案。 答案是节电程序已打开,而神秘消息意味着后台网络功能已被节电程序禁用。 一旦我关闭了省电模式,所有通知都开始定期发送,没有任何问题。为了进行测试,我将其关闭,通知因同样的错误而停止。
【讨论】:
以上是关于解决申请开发者office E5中无法发送手机验证码,reCaptcha加载失败的主要内容,如果未能解决你的问题,请参考以下文章
奇淫巧技 | Microsoft 365 开发版e5账户 续订教程
phpmailer 发送Outlook邮件时535 5.7.3 authentication unsuccessful错误的解决办法
phpmailer 发送Outlook邮件时535 5.7.3 authentication unsuccessful错误的解决办法