passport.baidu.com
1.百度登陆接口:
http://www.baidu.com 获取BAIDUID cookie get
https://passport.baidu.com/v2/api/?getapi&class=login&tpl=mn&tangram=true 带着Cookie获取该页面的token get
https://passport.baidu.com/v2/api/?logincheck&callback=bdPass.api.login._needCodestringCheckCallback&tpl=mn&charset=utf-8&index=0&username=%@&time=1645429566039检查账户是否需要验证码 GET
https://passport.baidu.com/v2/api/?login一切就绪登陆 post
可以使用#define keyCookiesArray @[@"BDUSS", @"PTOKEN", @"STOKEN", @"SAVEUSERID"]
这四个Cookie评估是否已登陆百度。
wap端也有几个
http://wAPPass.baidu.com/wp/api/login/check?v=1395574390160&username= 验证账户是否要验证码
http://wappass.baidu.com/passport/login?isphone=&ssid=&u=http%3A%2F%2Fpan.baidu.com%2F%3Fuid%3D1395667131598_215&adapter=0&sms=&smsStep=&smsvc=&tempid=&mobilenum=&password=&skin=default_v2&authsite=1&action=reg&type=2 触屏登陆
http://wappass.baidu.com/passport/login?isphone=&ssid=&u=http%3A%2F%2Fpan.baidu.com%2F%3Fuid%3D1395667124991_52&adapter=0&sms=&smsStep=&smsvc=&tempid=&mobilenum=&password=&skin=default_v2&authsite=1&action=reg&type=2 普通登陆
似乎看起来网址没啥区别,但是触屏版本对密码进行了加密,使用RSA加密算法,不大适合作为登陆接口了,普通的倒还是可以试试的。
2.获取封面
不能直接根据附件地址下载图片,必须在请求头里添加引用的域名
无法从响应头中获取图片大小,因为Transfer-Encoding 为chunked,服务器不返回文件大小。因此,expectedcontentLength这个方法会返回-1。
<ERROR>: ImageIO: JPEG Corrupt JPEG data: premature end of data segment 似乎和网络不给力有关系
现在直接从页面解析出文件大小,设置误差1KB计算图片大小与下载的Data进行比较,下载的数据只比解析出的图片size小1KB以内,就认为下载完全。
3.存储订阅的栏目
转发一条粗心的情况:原因找到了,是下面的参数写错了,应该是NSDocumentDirectory
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
NSDocumentationDirectory路径是在:GUID/Library/Documents
NSDocumentDirectory路径是在:GUID/Documents