在ASP.NET页面IIS7.5环境下调用MoonAPNS发送iOS全局推送失败的原因

问题:
在asp.net页面中尝试使用MoonAPNS库发送全局推送,碰到异常
相关错误信息片段如下,
System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromBlob

注:我的开发环境为Windows 7 Enterprise 32 bits, IIS 7.5, asp.net 4.0, vs2010

分析
我首先就怀疑是不是我的证书和密码不正确,不过之前在mac上已经使用openssl验证过,应该不会有问题。
不错还是处于谨慎的态度,我在MoonAPNS的样例控制台项目中测试了我的证书及密码的正确性,根据结果我再次确认我的证书和密码是没有问题的。

由此我开始怀疑是不是iis造成的,赶紧放google去搜,原来还真是iis配置问题。请参考老外在stackoverflow的注解,
Turns out there's a setting in the IIS Application Pool configuration (Application Pools > Advanced Settings) to load the user profile for the application pool identity user. When set to false, the key containers aren't accessible.

修复步骤:
打开iis管理器,找到我使用的application pool。 将Advanced Settings->Load User Profile选项设置为true

结果:
成功调用MoonAPNS发送全局推送通知
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值