`
邱铁军
  • 浏览: 43568 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

SNS 游戏接口数据说明

阅读更多
1:获取SessionKey
   1)什么是SessionKey?
       sessionKey是开心网用户登录会话的标识代码,用户登录开心网后会产生一个SessionKey。通过SessionKey,我们可以知道当前登录用户的信息,然后调用Rest接口。
   2)如何获取SessionKey
       用户在开心网平台方位第三方组件的时候,首先会访问第三方组件首页URL(申请组件时填写的地址)。开心网平台会用GET方式把当前用户SessionKey传递给第三方组件首页URL。
     需要注意的是:只有用户做开心网平台访问第三方组件首页时才会传递SessionKey,如果用户停留在第三方组件某个页面时间过长,开发者在首页拿到SessionKey后,需自己临时保存SessionKey,以保证在组件的的其他页面也能获得SessionKey。

   3)验证SessionKey
        以获取的SessionKey可以通过以下方式验证是否为开心网发出的(此验证非必需);将获取的SessionKey和组件secret_key用下划线链接,进行MD5加密,验证生产的字符串与获取的SIGN参数是否一致。
       参考代码:
      $secret="XXXXXXXXXXXXX";
     $localsig=md5($_GET['session_key'].'_'.$secret);
     if($localsig==$_GET['sig']){
         正确
     }
2.如何使用REST接口。
  1)关于Rest接口
       目前REST接口从用户使用方式上可分为两种类型:-交互式接口;二直接请求式接口。交互式接口的特点:使用交互式接口会在页面中弹出交互界面。这些界面都是开心网REST接口提供的。样式功能相对直接请求式接口的特点:开发者向接口发送一定格式的请求数据,然后接口返回结果。调用REST接口都需要使用调用参数和验证字符串SIG,具体参数需要参考者每个接口的使用说明。
     验证字符串sig生成方式:
     将所有参数进行排序,排序为字母顺序;
     将排序好的参数拼接成字符串例如:k1=v1,k2=v2,k3=v3 拼接得到的字符串为 k1=v1k2=v2k3=v3在上述转换后的串末尾追加上组件的secret_k用MD5算出上述串的MD5值,结果即为sig。代码实现
ksort($param);
$request_str = '';
foreach ($param as $key => $value)
{
$request_str .= $key . '=' . $value;
}
$sig = $request_str . $this->secret;
$sig = md5($sig);
示例代码中KxPlatform_Api::buildQuery方法封装了获得sig的过程,并将sig加入到提交参数中。
2) 调用REST接口
交互式接口:
a.首先要把调用参数和验证字符串通过base64加密得到加密后的加密调用字符串。
参考示例代码中的
$query = $kxplatform_api->buildQuery($param);
$query = KxPlatform_Utils::url_base64_encode($query);
b.页面前端使用JavaScript请求接口
参考示例代码

//para 为上步得到的加密调用字符串
function showKxDialog(para)
{
var t = document.createElement("div");
t.innerHTML = '<iframe src="http://www.kaixin001.com/rest/rest.php?para='+para+'" scrolling="yes" height="0px"  width="0px" style="display:none"></iframe>';
document.body.appendChild(t.firstChild);
}
注意:必需用GET方式传递para参数,否者返回结果显示1011错误。
直接请求式接口:
a.获得调用参数和验证字符串
参考示例代码中的
$query = $kxplatform_api->buildQuery($param);
b.将上步中的参数POST提交给接口
参考示例代码中的
$result = KxPlatform_WebRequest::postRequest($kxplatform_config['actionsurl'], $query);
c.得到接口返回结果$result
注意:目前返回结果只支持JSON格式。


3.关于回调地址:
      有些接口,做用户操作后,会将结果通知第三方组件。第三方组件需要提供一个回调地址来接受接口的回调参数。回调参数用GET凡是传递给回调地址。回调参数中的sig参数用来验证这次回调是否由开心网发来的。验证sig的方法擦门口示例代码.
$queryStr = $_SERVER['QUERY_STRING'];
$checkSign = $kxplatform_api->checkSignFromQuery($queryStr);
注意:回调地址中的sig和调用接口参数中的sig意义不同,没有任何联系
分享到:
评论

相关推荐

    sns 数据结构设计

    在设计SNS平台时,数据结构的设计至关重要,它直接关系到系统性能、数据管理效率以及用户体验。 2. 新闻系统与微博数据结构设计: 新闻系统和微博系统都是SNS平台中常见的功能模块,它们具有各自独特的数据结构需求...

    SNS2124&SNS2224&SNS2248&SNS3096&SNS5192&SNS5384产品文档.hdx

    SNS2124&SNS2224&SNS2248&SNS3096&SNS5192&SNS5384产品文档

    SNS系列光纤交换机部署与管理培训

    【SNS系列光纤交换机部署与管理培训】是华为OEM博科光交培训文档,主要涵盖的内容包括光纤交换机的各类接口类型、License管理、NPIV技术、接入网关功能、ISL级联、动态路径选择策略以及Fabric带宽等关键知识点。...

    近乎SNS论坛源代码

    同时,遵循模块化设计原则,"近乎SNS论坛"具有良好的扩展性,开发者可以方便地添加新的功能模块或集成第三方服务,如社交媒体登录接口、第三方支付等。 七、持续集成与部署 对于大型项目,持续集成和自动化部署是...

    对SNS下游戏行业的发展看法

    在当前的互联网时代,社交网络服务(SNS)已经成为人们日常生活和娱乐的重要组成部分,而游戏行业则在SNS平台的推动下,找到了新的发展路径。本文将深入探讨SNS环境下的游戏行业发展趋势及其面临的挑战。 首先,SNS...

    SNS网站及用户分析报告

    报告可能详细解读了SNS平台的各种功能,如个人资料创建、好友添加、动态分享、消息推送、群组创建、游戏应用、广告投放等,以及这些功能如何促进用户间的互动和信息交流。同时,可能会讨论新兴功能,如虚拟现实、...

    SNS中的文本数据挖掘.pdf

    在探讨SNS中的文本数据挖掘时,我们需要关注文本挖掘技术的应用、中文自动分词算法、热点话题识别、文本平滑处理以及相关数据分析方法等方面的知识。 首先,文本挖掘是指从非结构化的文本数据中提取有价值的信息和...

    sns-login sns-login

    2. **API接口**:社交网络平台通常提供API(Application Programming Interface),允许开发者调用获取用户信息、授权等功能。例如,微信开放平台、Facebook Graph API等。 3. **身份验证与授权**:sns-login涉及...

    SNS游戏保卫羊村FLASH源代码

    《SNS游戏保卫羊村FLASH源代码》是一个用于学习和研究的开源项目,它揭示了社交网络服务(SNS)游戏中常见的游戏机制和设计思路。这款游戏以“保卫羊村”为主题,玩家通过策略布局和资源管理来抵御狼群的攻击,保护...

    国内主流SNS网站分析与数据整理

    - **豆瓣**:SEO数据出色,说明其在搜索引擎上的自然流量占比大,口碑和内容质量为其带来了持续增长。 - **校内网**:SEO策略有待改进,可能需要加强在搜索引擎上的可见性。 综合来看,中国SNS网站的发展受多种...

    我眼中的SNS

    随着技术进步和用户需求的演变,SNS逐渐演化为包含多元功能的平台,如即时通讯、内容分享、游戏娱乐、在线购物等。这些功能的实现,离不开强大的后端架构和前端设计。 在源码层面,SNS的构建通常基于微服务架构,以...

    AMFPHP教程(sns游戏开发)

    在描述的场景中,AMFPHP被用于开发SNS(社交网络服务)游戏,使得Flash游戏能够与服务器端的PHP进行无缝交互。 首先,你需要下载并安装AMFPHP。在示例中,使用的是1.9BETA2版本,但你也可以根据需求选择其他版本。...

    聚友SNS

    【聚友SNS】是一个基于社交网络服务(SNS)的开源系统,主要适用于个人或组织建立线上社区,促进用户间的交流与互动。这个系统来源于2009年前的版本,其目的是为了提供一个学习和研究的平台,帮助开发者了解SNS系统...

    sns社交网站论文

    在系统架构设计方面,高校SNS系统采用分层架构,包括表示层、业务逻辑层、数据访问层和数据持久层。这种架构有利于职责分明,便于维护和扩展。 总之,这篇论文探讨了使用Spring MVC和MongoDB构建高校SNS系统的关键...

    SNS服务器架构分享

    关于SNS游戏服务器、程序设计相关的架构设计,代码设计

    SNS社交网站-数据库设计说明书

    描述中提到这份文档是新手学习sns网站架构的数据设计实例,说明了文档的目标受众和学习目的。文档中提到的详细程度说明了其对于社交网络数据库设计的复杂性和涉及的范围。 标签"数据库 sns 设计"直接反映了文档内容...

    OceanStor_SNS2120&5120_光纤交换机_产品文档-(V100R001_06)

    文档首先介绍了OceanStor SNS2120和SNS5120的硬件特性,包括其模块化设计、接口配置、电源与冷却系统,以及前面板和后面板的物理布局。这些信息对于设备的安装和布线至关重要。此外,文档还详述了如何进行设备的硬件...

    focus sns jsp 开源sns框架代码

    "Focus SNS JSP 开源SNS框架代码"是一个基于Java技术栈的社交网络平台的开源项目,主要用于构建社交网络服务。此框架的核心是利用JavaServer Pages (JSP) 技术来创建用户界面,结合后端服务实现动态网页功能。...

    盘点中国SNS网站

    ### 盘点中国SNS网站 #### 中国SNS网站概览 近年来,社交网络服务(Social Networking Service,简称SNS)在中国互联网市场迅速崛起,成为互联网应用中的重要组成部分。这些平台不仅改变了人们的社交方式,也为...

Global site tag (gtag.js) - Google Analytics