首页   注册   登录
 stephenliubp 最近的时间轴更新

stephenliubp

iOS开发、web开发 | 95后 | 海贼王、龙珠 | 乒乓球 健身 | 杭州
V2EX 第 247718 号会员,加入于 2017-08-09 16:38:15 +08:00
今日活跃度排名 15044
Web 端反爬虫技术方案
信息安全  •  stephenliubp  •  9 天前  •  最后回复来自 stephenliubp
4
iOS 唯一标识符
iDev  •  stephenliubp  •  70 天前  •  最后回复来自 stephenliubp
5
git 提交到 github 有问题
GitHub  •  stephenliubp  •  51 天前  •  最后回复来自 jianpanxia
4
MWPhotoBrowser bug
iOS  •  stephenliubp  •  226 天前  •  最后回复来自 stephenliubp
3
VSCode 求 Node.js 插件
Node.js  •  stephenliubp  •  231 天前  •  最后回复来自 feichao
7
Xcode 模拟器卡成狗
iOS  •  stephenliubp  •  265 天前  •  最后回复来自 stephenliubp
3
stephenliubp 最近回复了
9 天前
回复了 stephenliubp 创建的主题 信息安全 Web 端反爬虫技术方案
@nmask 工作需要,自己研究了下而已啦。真正厉害且有丰富前端经验的爬虫工程师还是可以搞定的
@hcymk2 看到不同也没啥用。观察给人的感觉就是字符串处理了。字符串处理肯定不行,找不到一个普适的准则
@dorentus 我没有他代码,我的意思是给大家看看 iOS 的实现思路。让懂 Android 的人根据我这种写法想到 Android 对应的实现方法
@Daniate 嗯,早期用这个,后来换成“ ssl 证书双向认证;数据 RSA 加密;接口防重放“。
@AwayEM 数据 RSA 加密了
数据安全方面给个推荐:Web 端: https://github.com/FantasticLBP/Anti-WebSpider。App 端:ssl 证书双向认证防止 抓包工具抓包;数据 RSA 加密;接口防重放
35 天前
回复了 stephenliubp 创建的主题 信息安全 Web 端反爬虫技术方案
@aWangami 一个 iOSer 的瞎搞搞
@snail1988 对,防止抓包,但是我写了 ssl-pinning 的代码测试过还是可以抓包的。

``` Objective-c

+ (AFSecurityPolicy*)customSecurityPolicy
{
NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"https12" ofType:@"cer"];
NSData *certData = [NSData dataWithContentsOfFile:cerPath];
AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
securityPolicy.allowInvalidCertificates = NO;
securityPolicy.validatesDomainName = YES;
securityPolicy.pinnedCertificates = @[certData];

return securityPolicy;
}

+ (void)postUploadWithUrl:(NSString *)urlStr para:(NSDictionary *)para name:(NSString *)name fileData:(NSData *)fileData fileName:(NSString *)fileName fileType:(NSString *)fileType success:(void (^)(id responseObject))success fail:(void (^)(void))fail
{

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.securityPolicy = [AFNetPackage customSecurityPolicy];
[manager POST:urlStr parameters:para constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) {
[formData appendPartWithFileData:fileData name:name fileName:fileName mimeType:fileType];
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nonnull responseObject) {
if (success) {
success(responseObject);
}
} failure:^(NSURLSessionDataTask * _Nonnull task, NSError * _Nonnull error) {
if (fail) {
fail();
}
}];
}
```
域名的话会经过 DNS 解析,一些第三方会黑掉 DNS,将 DomainName 映射到一个目标广告地址,所以采用 IP 直连技术会解决。
Cisco Packet Tracer 画啊
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3130 人在线   最高记录 3762   ·  
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.1 · 25ms · UTC 07:39 · PVG 15:39 · LAX 00:39 · JFK 03:39
♥ Do have faith in what you're doing.
沪ICP备16043287号-1