手机第三方新浪微博登录php api实现分析

简介:

    提供api,POST方式,根据传递过来的微博uid/appkey,判断该用户的ID是否在自己的数据库中。

    如果有,直接登录返回用户登录api的json。

    如果没有,就将该用户的ID+token请求微博用户信息api:http://open.weibo.com/wiki/2/users/show,根据返回的用户信息json数据在数据库中创建新用户。再执行登录,返回用户登录的json。  

    使用微博 php sdk,根据微博返回的token值,获得用户信息。


    微博授权返回post参数

    {

           "uid": 1073880650, 

           "appkey": 1352222456,

           "scope": null,

           "create_at": 1352267591,

           "expire_in": 157679471,

         "token":xxxxx,

         "source_add":"ios"

    

     }

    微博用户信息api返回实例json

    {

        "id": 1404376560,

        "screen_name": "zaku",

        "name": "zaku",

        "province": "11",

        "city": "5",

        "location": "北京 朝阳区",

        "description": "人生五十年,乃如梦如幻;有生斯有死,壮士复何憾。",

        "url": "http://blog.sina.com.cn/zaku",

        "profile_image_url": "http://tp1.sinaimg.cn/1404376560/50/0/1",

        "domain": "zaku",

        "gender": "m",

        "followers_count": 1204,

        "friends_count": 447,

        "statuses_count": 2908,

        "favourites_count": 0,

        "created_at": "Fri Aug 28 00:00:00 +0800 2009",

        "following": false,

        "allow_all_act_msg": false,

        "geo_enabled": true,

        "verified": false,

        "status": {

            "created_at": "Tue May 24 18:04:53 +0800 2011",

            "id": 11142488790,

            "text": "我的相机到了。",

            "source": "<a href="http://weibo.com" rel="nofollow">新浪微博</a>",

            "favorited": false,

            "truncated": false,

            "in_reply_to_status_id": "",

            "in_reply_to_user_id": "",

            "in_reply_to_screen_name": "",

            "geo": null,

            "mid": "5610221544300749636",

            "annotations": [],

            "reposts_count": 5,

            "comments_count": 8

        },

        "allow_all_comment": true,

        "avatar_large": "http://tp1.sinaimg.cn/1404376560/180/0/1",

        "verified_reason": "",

        "follow_me": false,

        "online_status": 0,

        "bi_followers_count": 215

    }



http://open.weibo.com/wiki/API%E6%96%87%E6%A1%A3_V2#OAuth2

http://open.weibo.com/wiki/API%E6%96%87%E6%A1%A3_V2#.E7.94.A8.E6.88.B7

http://blog.csdn.net/daleiwang/article/details/34081231

http://wiki.mob.com/%e5%ae%9e%e7%8e%b0%e7%ac%ac%e4%b8%89%e6%96%b9%e7%94%a8%e6%88%b7%e7%99%bb%e5%bd%95/


==========公共登录安全说明=======================

1、登录安全判断,防止恶意猜测用户id登录。

没有uid进行的的登录进行log记录


2、其他登录安全判断,防止恶意猜测用户密码。

密码1小时内连续验证10次失败后,锁定3小时不能登录。用户在4小时内连续有20次错误登录,进行账号冻结24小时。工作日进行登录接口的url访问日志排除,防止固定ip的恶意猜测用户密码行为。产品防止出现全称用户列表,防止被利用猜测用户密码。











本文转自ljianbing51CTO博客,原文链接:http://blog.51cto.com/ljianbing/1606716 ,如需转载请自行联系原作者




相关文章
|
10月前
|
安全 API Python
详解手机状态查询API实战指南
手机状态查询API是一款高效接口,可实时识别手机号状态(实号、空号、风险号等),帮助企业筛选有效号码,提升业务触达率与客户体验。
1357 0
|
10月前
|
监控 前端开发 安全
如何集成第三方支付API到电商网站
在电商网站中,集成第三方支付API是确保交易安全、提升用户体验的关键步骤。本文详细介绍了从选择支付提供商到上线监控的全流程,涵盖代码示例与实用建议,助您高效实现支付功能。
595 0
|
10月前
|
JSON Shell API
查手机号归属地免费API接口教程
本接口提供手机号码归属地查询功能,支持获取号段、归属地省份/城市、运营商、区号、邮编等信息。请求地址为 `https://cn.apihz.cn/api/ip/shouji.php`,支持 POST 或 GET 方式调用,需提供 `id`、`key` 和 `phone` 参数。返回包含归属地信息及运营商等数据,适用于手机号归属查询场景。
2010 6
|
机器学习/深度学习 人工智能 Serverless
👉「免费满血DeepSeek实战-联网搜索×Prompt秘籍|暨6平台横评」
满血 DeepSeek 免费用!支持联网搜索!创作声明:真人攥写-非AI生成,Written-By-Human-Not-By-AI
7238 11
👉「免费满血DeepSeek实战-联网搜索×Prompt秘籍|暨6平台横评」
|
11月前
|
监控 容灾 测试技术
第三方API的稳定性如何保障?
第三方API的稳定性对电商至关重要,直接影响业务连续性和用户体验。为确保稳定,可采取以下措施:选择可靠提供商、评估技术架构高可用性、实现限流重试机制、实时监控预警、充分测试、优化网络连接、使用API网关、保持与提供商沟通、制定应急预案及定期评估改进。这些方法能有效提升API稳定性,保障业务高效运行和用户满意度。
368 0
|
11月前
|
运维 数据挖掘 API
官方api和第三方api有什么区别
官方API与第三方API是电商商家常用的两种接口类型。官方API由电商平台提供,功能全面、集成度高、安全性强且稳定性好,适合处理核心业务;而第三方API由外部服务商提供,专注特定功能如支付、物流等,灵活性和扩展性更强,但安全性和稳定性参差不齐。商家应根据自身需求、预算及技术能力选择合适的API,确保数据安全与合规性,同时优化运营流程、提升用户体验并拓展业务功能,在竞争中占据优势。
817 0
|
API
查询城市手机号段免费API接口教程
此API用于查询指定城市的手机号段、服务商、区号、邮编等信息。支持POST或GET请求,需提供用户ID、KEY及城市名称等参数。返回数据包括状态码、信息提示、查询数量、最大页码、当前页码、省份、城市、区号、邮编、区划代码及数据集等。示例中提供的ID和KEY为公共测试用,建议使用个人ID和KEY以获得更高的调用频率。
477 5
|
API
查手机号归属地免费API接口教程
此API用于查询指定手机号码的归属地信息,包括号段、省份、城市、运营商等。支持POST和GET请求方式,需提供用户ID、KEY及手机号作为参数。返回结果包含状态码、信息提示及详细归属地信息。示例请求地址:https://cn.apihz.cn/api/ip/shouji.php?id=88888888&key=88888888&phone=13219931963。
3121 5
|
API
手机号段查询城市免费API接口教程
此接口用于根据手机号段查询相关信息,包括城市、运营商、区号等。支持POST和GET请求,需提供用户ID、KEY及手机号段前7位作为参数。返回数据包含状态码、信息提示及详细归属信息。示例请求地址:https://cn.apihz.cn/api/ip/haoduan.php?id=88888888&key=88888888&numbers=1321993。接口免费,建议使用个人ID与KEY以独享调用频次。
624 4
|
存储 消息中间件 前端开发
Web2py框架下的神秘力量:如何轻松集成第三方API,让你的应用不再孤单!
【8月更文挑战第31天】在开发现代Web应用时,常需集成第三方服务如支付网关、数据存储等。本文将指导你使用Web2py框架无缝接入第三方API。通过实例演示从注册获取API密钥、创建控制器、发送HTTP请求到处理响应的全过程。利用`requests`库与Web2py的内置功能,轻松实现API交互。文章详细介绍了如何编写RESTful控制器,处理API请求及响应,确保数据安全传输。通过本教程,你将学会如何高效整合第三方服务,拓展应用功能。欢迎留言交流心得与建议。
345 1