积分兑换java 外部接口调用条用啥意思

深圳市宝安沙井星际大厦2401
主营业务:股票投资 - 黄金投资
已认证手机
未认证身份证
未认证营业执照
相关类目:
周边城市:
重点城市:
© 2018 Jinti.com. All rights reserved. & 版权所有 今题网 & 未经许可,不得转载
还没有关注今题网?
芒果积分和精美奖品等你拿!【11月28日更新】有赞开放API接口更新日志及开发者交流
阅读: 15886
各位第三方开发者:
开放合作是未来的趋势,有赞认为商业合作伙伴将在未来的开放环境中扮演越来越重要的角色。我们提供一个开放的平台,让合作伙伴可以与消费者、商家建立起紧密合作,让消费者购物更加便捷有趣,让有赞商家更专业、更高效进行经营。无论您是第三方开发者(ISV)、传统软件厂商、互联网O2O硬件,应用营销开发商或者大商家,都能基于有赞开放平台找到适合自己的业务方向。&&
有赞开放平台是我们共同的家园。在此帖可以展开各种技术讨论、经验交流、需求收集、期望彼此能摩擦出更多的商机。为了开放平台的健康和谐发展,请大家踊跃参与跟帖。
请勿发广告,文明交流,如有接口需求请具体描述使用场景价值,有赞官方会及时收集大家的需求和问题!
接口更新公告
11月28日更新:更新接口:给用户增减积分接口:kdt.crm.customer.points.decrease/kdt.crm.customer.points.increase说明:入参规则新增手机号码字段“mobile”支持用户手机号和粉丝id调用(mobile或fans_id至少传一个),以此来给用户增减积分新增接口:查询用户积分以及积分变更记录(支持根据手机号或粉丝id)
kdt.crm.customer.points.changelog.get说明:第三方通过该接口查询用户积分和积分变更记录,通过入参查询时间(必须七天之内),用户信息(粉丝id和手机号其一)来查询用户在有赞增减多少积分,最终剩下多少积分数值等信息。场景:1.之前积分必须以粉丝id为唯一标识,导致现在很多以手机号为准的第三方会员系统无法对应有赞的积分,有了手机号入参后外部可以自由选择手机号和粉丝信息来对应用户账号,实现积分同步2.通过积分变更记录同步接口,可以获取到最新的有赞内部的积分变化记录,例如某用户通过规则获取到了商家的30个积分,商家需求系统马上同步到积分信息,然后推送一条微信消息给到用户告知。另外,现在积分信息现在只能调取不能主动推送,敬请期待推送积分功能上线。
11月17日更新: / &&新增支持fans_id 加减积分。注意:原根据 fans_id 加减积分的kdt.crm.fans.points.payin.get / kdt.crm.fans.points.payout.get 两个接口已下线(不影响已调用商家),建议切换调用上述新接口。
11月15日更新:交易接口中新增自提订单门店id:新增字段:TradeFetch中新增shop id字段判断自提订单的门店id信息,与多门店id无关
10月19日更新:交易接口中新增酒店版解决方案接口:、
新增返回字段:hotel_info,酒店入住信息包括入驻时间,入驻人信息,退房信息
场景:酒店客栈商家在有赞销售房间,订单产生后,商家自有系统上同步常规订单信息之外,可同时查看客户入驻时间,退房时间,入住人信息,以便核对显示,对账等10月13日更新:1.消息推送服务新增支持商品数据变更推送通知。消息业务类型 type 新增 ITEM,商品对象参考 消息推送服务接入请参考:
2.客户关系接口新增:、说明:有赞商家可通过上述接口根据客户手机号给客户加减积分。场景:商家已有一批具有手机号信息的会员,且有会员积分。如商家想将这批会员导入有赞微商城同时将相应的积分记录导入,只需使用有赞微商城的【客户-会员管理-导入会员】功能将会员账号信息导入有赞,再调用上述接口以手机号为标识给相应会员加上积分,即可实现会员积分打通。
10月9日更新:获取单笔交易的信息:kdt.trade.get 说明:增加tuan_no 字段,表示拼团订单对应的团编号场景:用户是销售的班级是健身小班课程,举行呼朋唤友的活动。组团购买的用户需要进入一个班级,不同团的用户需要进行隔离。因此需要团编号。
9月29日更新:
交易接口:获取单笔交易信息和获取交易列表数据
更新:shipping_type字段新增同城配送订单类型,当显示为local时代表同城配送订单。方便第三方硬件和软件能根据同城订单类型来做归类和后续打印操作。
9月29日更新:
微信粉丝领取优惠券优惠码:
更新:新增card_id入参。“微信卡券card_id。coupon_group_id和card_id两个必须有一个
场景:有赞商家在有赞后台创建优惠券后,同步至微信卡券,可通过微信卡券功能对用户投放卡券(群发、嵌入图文等)。粉丝领取到卡券后,通过该接口字段,商家可传入微信的卡券id将相应的有赞优惠券/码派发给指定粉丝,实现双方领券同步。
<font color="#月28日更新:
交易接口新增秒杀和降价拍优惠信息
获取单笔交易的信息和查询卖家已卖出的交易列表返回信息中TradePromotion(订单中使用到的优惠活动的数据结构)新增SECKILL(秒杀)和 AUCTION(降价拍)优惠信息,包括标题,金额等内容。方便外部开发者核对对账。
9月26日收银台接口更新完善:根据最新收银台功能完善接口:创建收款二维码接口中收款理由变更为二维码名称,新增标签字段;获取收款二维码生成记录列表接口新增二维码类型、是否使用优惠及具体优惠信息;新增二维码详情查询接口,可查询二维码图片、名称、金额、关联 URL、优惠信息等;新增二维码标签列表信息接口。
9月22日开放接口:电子卡券单个码券核销:
电子卡券整单核销:
获取电子卡券信息:
获取电子卡券信息:通过扫用户线下核销时候的二维码(我们成为电子卡券二维码的码号:code),得到该笔订单码号的订单号,核销状态,还有最重要的是所有下面的子码券核销信息。包含每个子码券的核销状态,核销时间,子码券号。
整单核销:用于一次核销整个电子卡券下的所有码券,传20位数code码号,把下面的所有子码券全部核销。
单个码券核销:单笔订单下面单个码电券核销,通过传子卡券码券号(每个电子卡券下的12位的码券号)ticket_code来核销
9月19日新增商品评价接口:说明:通过店铺id,商品id,skuid,订单id,买家id等条件去获取商品评价内容,支持查询单条评价数据或复合条件组合查询多条评价数据,支持查询某个商品的好评/中评/差评统计数。备注:新增评价接口组,以往开发者须自行重新生成token才能调用评价接口组内的接口。
9月14日更新:
获取商品优惠详情:
说明:一个牛逼的全站优惠信息的商品接口
通过商品id(必填)或粉丝id,有赞id查找有赞店铺该商品关联的所有优惠活动信息,包括订单维度的满减送和订单返现;包括优惠套餐和积分兑换;包括商品维度的团购,秒杀,拼团,降价拍,会员折扣,限时折扣。
场景:某商家需求自定义商品展示详情页面,需求在每个商品页面上展示该商品关联的优惠信息有哪些,通过该接口可以知道商品有哪些优惠活动。也可以通过该接口核对出所有某优惠活动的商品列表信息,在商品页面上设计秒杀专区,团购专区等活动策划。
<font color="#月14日更新:您是不是有这样的困扰:&&有赞接口文档中的各种ID:weixin_user_id;buyer_id;outer_user_id;fans_id;user_id,weixin_open_id,是不是把你凌乱得傻傻分不清楚。&&
开放平台已对文档中的用户ID进行了梳理优化,帮助开发者们更好的理解各名称的意义,更方便的调用开放接口&&详情请看:
9月13日接口地址:说明:多门店第二期主要目的是实现商品维度的外部同步,包括商品库存,价格,规格等信息。同时外部可以更新网点基础配置信息,修改网点的配送范围,起送金额等字段。场景:<font color="#.某商家有线下门店5家,利用有赞多门店功能,分别发布不同的商品信息,通过接口获取每个门店的商品信息。2.如门店地址不准确,可以根据门店的经纬度来更新门店配置。3.订单产生后,流转到指定的门店处理发货。该门店通过获取商品sku接口读取最新库存信息,实现门店和网店的库存同步管理4.获取线下门店的单个商品或所有商品的配送方式,也可以通过接口更新商品的配送方式。ps:多门店二期接口应与第一期的接口共同配置使用,获取网点列表信息的接口请到店铺接口中使用。
9月9日接口更新同步:用户接口(获取用户粉丝信息):http://open.youzan.com/api#9包括三个接口:查询微信粉丝用户信息根据多个微信粉丝用户的 openid 或 user_id 获取用户信息根据微信粉丝用户的 openid 或 user_id 获取用户信息入参规则:限制拉取用户信息的单页条数,例如代表拉取微信粉丝用户信息的每页条数,原来限定为最大值5000条,现都改为每页50条拉取。请各位开发者及时知晓。
交易接口中增加单个商品退款金额字段:
说明:交易接口 tradeorder 字段内增加 refunded_fee字段,代表单笔订单中单个商品的退款金额信息
目的:更好的协助商家对账
8月31日1. 修改kdt.item/1.0.0/add 添加商品接口新增电子卡券相关字段item_validity_start,item_validity_end,effective_type,effective_delay_hours,holidays_available,virtual_type;影响:所添加字段是非必填字读,对业务无影响2. 修改kdt.item/1.0.0/update 修改商品接口添加电子卡券相关字段effective_type,effective_delay_hours,holidays_available影响:所添加字段是非必填字读,对业务无影响
线下收银台创建二维码:
线下收银台外部订单号查看使用详情:说明:外部入参二维码名称,外部来源(由有赞分配)外部订单号,创建临时收银台二维码收款。再可通过传入外部订单号查询该笔支付订单的收款详情。
场景:某门店进销存系统,已经与有赞打通基础接口。通过该接口增加商家的支付方式。用户到线下消费100元,营业员输入100元,通过该接口向有赞申请一个收款二维码,显示在POS屏显上,用户用手机扫码支付。支付成功后返回支付结果。
备注:此接口仅支持免签名协议;该接口需要提前申请,得到有赞分配的外部来源标识,以便有赞判断该收银台二维码是哪个第三方产生。
8月9日按商品标记退款:说明:1.仅针对微信支付-自有订单,标记退款只是标记作用,且无法真正退款,当订单中的所有商品都标记退款之后,会把订单状态变成已关闭。2.由于是对商品进行标记退款,接口必须传交易商品标号以及对应的退款金额。3.微信支付-自有订单退款,您需自行前往微信商户平台操作退款。
8月5日积分兑换订单:说明:交易数据接口里增加“points_price”字段,代表此订单用了积分兑换,具体数值代表消耗了多少积分,非积分兑换订单默认为0,此接口开放便于商家通过接口来核对积分消耗和订单金额的核对,从而财务对账会更加清晰。
<font color="#月5日交易接口增加门店id字段:说明:多门店上线后,交易订单需要快速流转到指定的门店,交易接口中增加“shop_id”字段,非多门店订单则默认为0。根据该字段识别该笔订单属于哪个具体门店,订单分配到该门店,快速处理订单发货等后续流程,实现多门店订单打通。
8月2日开放接口:
获取网点列表:
说明:通过网点类型(自提点或网点),网点名称,当前页码搜索单个店铺下面所有的门店列表,如果网点数很多,以分页显示网点信息。返回字段包括网点id,门店地址,电话,创建时间等等信息。
原有交易接口:查询卖家已卖出的交易列表:请找到入参列表里“store_id”字段,意是通过网点id去调取该网点下的所有订单信息
场景:某有赞商家有200家线下门店,利用有赞合作的小票打印机打印小票。打印机系统通过获取所有网点id和网点id下的所有网点信息,绑定每个网点的小票打印机唯一编号。再通过交易列表接口,获取网点所产生的交易信息,自动关联某笔交易属于哪个网点,从而知道该笔订单属于哪个小票打印机,小票打印机自动打印出这笔订单的小票。
7月28日微信粉丝领取优惠券优惠码:返回结果中增加“用户领取优惠码和优惠券详情”的页面,详情包括已经核销的优惠券/码id,标题,链接等所有优惠券/码信息背景:很多商家或第三方专业做优惠券的平台,会集合各种平台的优惠券派发,当用户领取后,显示核销状态流程:在有赞后台新建一组优惠券-&优惠券信息通过API同步到外部的会员后台-&会员通过外部后台根据积分等活动领取优惠券-&我们通过API后台帮会员在有赞领取优惠券-&会员到有赞使用优惠券-&外部后台到有赞读取优惠券核销信息,更改优惠券状态
7月26日下单入口,进入结算页:
添加商品至购物车:下单接口介绍:外部开发者通过上传下单商品的信息,加上订单类型,店铺id等信息,有赞给予回传下一步的结算页url,走完下单流程添加购物车接口介绍:外部开发者通过上传商品的id,营销活动信息,店铺id等信息,申请添加至有赞购物车页面背景:很多有开发能力的商家和外部app开发者,利用有赞开店后,需求设计自己的前端店铺首页和商品详情页,根据自己的企业属性配置不同的ui和交互呈现,实现更加自定义和丰富的展示效果。利用这两个接口,开发者们可以完全自定义开发页面。
7月26日标记退款:
介绍:该接口只支持微信自有的商家,利用该接口实现上传交易单号,该笔订单自动在有赞后台自动标记退款,订单状态会变成已关闭,所以请商家和开发者谨慎处理每一笔订单。有可能出现一笔订单中,某个商品退款,容易误操作变成已关闭订单场景:某微信自有支付商家,订单量很大,每天需要退款的订单也很大,当微信后台退款完成后,需要到有赞后台一个一个标记退款,操作成本很大。有了该接口,可以快速上传订单号,自动标记退款。利用接口快速上传,可以实现批量标记的退款,减轻了操作人员的操作成本。
7月7日虚拟商品订单类型:获取单比交易信息和列表信息中增加字段:is_virtual,识别该笔订单是否属于虚拟商品订单场景:很多商家店铺中不仅卖实物商品,也同时卖虚拟商品。虚拟商品线下核销后,无法根据订单来对账,有了这个字段,可以区分常规订单和虚拟订单。
7月2日开放接口:1.获取推广订单列表2.获取商品推广链接3.批量获取商品提成比例信息4.获取销售员账户信息5.三方用户成为销售员
适用对象:1.目前只支持三方APP环境下的使用,后续陆续开放微信和外部PC网站的使用场景。2.适合拥有大量网红,主播,淘客,意见领袖等用户沉淀的平台商家
如何申请:邮件至 &&申请接口权限,一个工作日后自动开通!
:1、获取店铺积分商城基本配置信息
2、给用户加积分
3、消耗用户积分
4、第三方应用查询积分变更纪录
5、获取粉丝积分
如何申请:邮件至 &&申请接口权限,一个工作日后自动开通!
日有赞OAUTH 服务化改造升级
1. 鉴权服务改造升级2. 样式变更&&3. 增加一种新的授权方式 silent (三方不需要用户主动来授权 就可以换取凭证 。前提是三方在用户授权白名单里 )
影响 : 1. 兼容性问题 有部分安卓机上 以及部分浏览器 访问授权页面 会白屏 (前端工程师正在修复)2. POST 提交参数的问题&&编码仅支持 form-data 、x-www-from-urlencoded (之前是没有说明清楚)3. 之前走授权码& &TOKEN 换取的时候 后台是没有做redirect_url检查的 (文档里虽然说明要求 但实际上并没有)
日(重要,非常重要)接口信息变更通知:
kdt.trade.get 获取单笔交易的信息
kdt.trades.sold.get 查询卖家已卖出的交易列表
返回字段中:原discount_fee字段——交易优惠金额(不包含交易明细中的优惠金额)—现在不再将对订单的改价金额计算到该字段中adjust_fee字段:卖家手工调整订单金额。精确到2位小数;单位:元。若卖家减少订单金额10元2分,则这里为10.02;若卖家增加订单金额10元2分,则这里为-10.02—现多返回一组数据(1.总改价金额;2.订单改价;2.邮费改价)
现promotion_details字段:在交易中使用到优惠活动详情,包括:满减满送—订单中使用到的优惠活动的数据结构中增加拼团订单的优惠详情
kdt.trade.get 获取单笔交易的信息
kdt.trades.sold.get 查询卖家已卖出的交易列表
pay_type字段中新增WEIXIN (微信自有支付)和WEIXIN_DAIXIAO (微信代销支付)的支付类型场景:商户通过交易接口中的微信自有支付的交易类型字段信息,了解到该笔订单属于微信支付自有,通过订单号去核对微信官方后台的财物对账信息。
获取限时折扣的商品和折扣信息:https://open.youzan.com/apidetail?method=kdt.ump.timelimiteddiscount.find&apiId=7155
通过接口得到限时折扣商品信息和折扣信息列表,还有商品的总数量。
场景:某商家自己做了一个活动详情页,通过搞限时折扣活动吸引客户来购买。通过该接口商家拿到了有赞店铺中所有的限时折扣的商品信息列表,然后根据设计排列出来展示,大大冲击了用户的点击冲动。
根据第三方userId查询订单列表接口:方式:先通过“查询卖家已卖出的交易列表”接口中返回的三方APP用户IDuter_user_id字段调用得到三方交易中的所有订单列表信息。场景: 小明是喜马拉雅app的忠实用户,在喜马拉雅app的有赞店铺中买了很多周边产品,但是喜马拉雅并不能很方便的查询该用户在店铺中的所有交易信息,就无法根据用户购买订单来进一步分析。喜马拉雅方通过调取有赞开放平台交易列表接口,得到用户的user ID信息,再通过该接口查询到该用户的所有订单信息
日更新一个商品标签:
删除一个商品标签:新增一个商品标签:通过接口实现外部更新,删除,新增一个自定义的商品标签场景:小明是一家超市的负责人,在有赞开了一家新店铺,线下有一个超市进销存系统,他通过超市收银系统跟有赞商品打通,省去了在有赞传上千个商品的苦恼,可新的苦恼是超市的商品品类众多,他需要去有赞给所有商品自定义各种商品的标签,有了有赞的更新,删除,新增自定义商品标签接口,可以在收银系统上快速更新,新增自定义商品标签同步到有赞,大大提高了效率!
日找人代付订单接口:(PEER 代付,outer_tid)根据交易订单获取找人代付类型的订单,如是微信支付自有支付,可通过outer_tid外部订单列表,就是财付通的交易单号场景:小红是个一个直播平台的知名主播,有众多粉丝追随。该直播平台里有有赞的微商城销售各种礼品,小红进入商城看到一个中意的商品,点击进入购买页面,选择找人代付。小红把该代付订单链接上传到自己的个人主页,小红的粉丝看到后,争先恐后的帮忙下单,完成付款。
日:微信粉丝领取优惠券优惠码:根据微信粉丝openid主动派发优惠券和优惠码,同时获取用户得到优惠详情和使用状态。场景:商家通过各种营销工具,如签到积分,扫码关注,朋友圈分享,投票等活动给这类特定参与用户主动派发优惠券。比如商家在实物商品上带上二维码,用户关注后系统自动给用户派发一个有赞优惠券。为了让用户有感知得到优惠,再可以通过微信客服接口,给予消息提醒。
获取所有未结束的优惠列表:获取后台设置的未结束的(包含未开始的、进行中的)所有优惠券和优惠码列表,内含该优惠券的所有参数信息场景:某商家搞大型活动,全场促销领取优惠券。商家页面展示所有优惠券列表,用户到页面自由选择领取优惠券。
<font color="#16年4月15日到店自提核销接口:https://open.youzan.com/apidetail?method=kdt.trade.selffetchcode.apply&apiId=7054返回到店自提的码核销结果信息,同时根据到店自提获得的码,获取该订单的相关信息场景:小明购买了一箱苹果,支付时选择到店自提,购买成功后,获得一个该订单的二维码页面。小明第二天路过该门店,进店告知营业员需要拿已经线上买的一箱苹果,小明拿出该到店自提的二维码凭证,主动靠近柜台的硬件核销设备(也可以核销设备主动扫小明的二维码),确认核销完成,小票打印机出该订单小票,营业员留底小票,给小明一张小票,同时小明拿走苹果。
拼团订单等待成团状况接口:(字段名:WAIT_GROUP 等待成团,即:买家已付款,等待成团),)
场景:商家可通过ERP读取到该订单为拼团订单,3人成团订单为例,一人购买,成为团长,他的订单(state=50)为待成团状态,如果其他两人购买成功,整组订单会变为已成团订单,状态返回都是5!!如果拼团失败,只有一人支付,这个组的订单会被关闭(状态99),团解散,已付款的会系统自动退款,状态都会变为99关闭。
order_type=10 为拼团订单 (前置条件)
state=50 为待成团
state=5 为已成团
店铺首页url接口:
开放店铺接口中店铺首页链接信息返回
场景:第三方平台现只能通过店铺接口得到店铺的id和店铺名称等信息。之后,第三方可以通过店铺首页url信息,自动展示在前端平台上,用户点击后进入浏览。
团购、订单返现信息:
限时折扣信息:
开放接口订单详情promotion_details中添加团购,订单返现,限时折扣的信息返回。
场景:外部平台可以通过获取单笔订单接口获取到该笔订单是否参加限时折扣,团购,订单返现。同时获取到优惠完后的实际支付价格,优惠金额。
分销订单接口:& &(字段名:relation_type)
加入分销订单、采购单、普通订单的标识输出,同时根据订单类型,返回订单号列表。
场景:门店导购成为分销商销售商品,买家到店自提、核销,买家手头掌握的是:买家手机号、买家付款的订单号。门店核销时,让买家报手机号,可能订单不唯一。通过买家付款的订单号,可以直接反查到供货商端的采购单号,现场点击发货、交付。
发表于 10:48&&|&&
怎么下载外卖系统
发表于 15:08&&|&&
kdt.items.onsale.get& & & & 获取出售中的商品列表
kdt.items.inventory.get& & & & 获取仓库中的商品列表
那么如何获取“已售罄”的商品列表?
发表于 19:31&&|&&
kdt.items.onsale.get& & & & 获取出售中的商品列表
kdt.items.inventory.get& & & & 获取仓库中的商品列表
这个接口我们没有呢
需要已经卖完订单列表的原因是?
发表于 10:50&&|&&
你好,我们是第三方应用(积分宝)的开发者,想询问有赞的积分接口(),是需要我们应用下的每个有赞商家都去申请这个接口,我们应用才能调用接口给对应的商家进行积分添加消耗是吗?申请时需要client_id,是我们第三方应用开发者(积分宝)申请应用后获取的client_id是吗?
发表于 13:32&&|&&
只需要你们申请就行了,就是申请应用时候的client id
发表于 16:30&&|&&
只需要你们申请就行了,就是申请应用时候的client id
可是申请的时候不是有个appid,对应的不是每个商家的有赞appid吗?我们作为开发商申请时要填写吗?
发表于 17:36&&|&&
快递助手专业打单发货
可以多店铺关联
有赞快递助手qq交流群哦:
有问题随时来问
发表于 20:35&&|&&
求助 | 接口咨询:
我们在给一个会员系统,设计到积分和余额两个重要的参数,有赞开放了积分的接口,但关于余额没有看到相关的接口。也就是当会员充值后有足够余额时,能不能通过会员卡中的余额来支付购买有赞商城的商品?
跪求答复。非常感谢。
发表于 23:18&&|&&
求助 | 接口咨询:
我们在给一个会员系统,设计到积分和余额两个重要的参数,有赞开放了积分的接口,但关于 ...
储值功能我们还没上线,等我们上线后会开放,预计年底了要需求文档及接口设计 - 简书
需求文档及接口设计
Version: V
Changelog:
创建订单传递字段修正
Changelog:
购买流程 增加
投保地区城市代码 、 投保省份
、 投保城市,由于投保城市不同,佣金费率会不同,所以需要获得
Changelog:
东航转账流程 增加 支付总价字段 consumesumpre
Changelog:
将东航车险团购需求加入到购买流程(对购买流程做整体修改)
融石提供中间接口
Changelog:
在调用东航创建保单信息的接口增加车辆识别代码(rackno),此项和车牌号必须填写一项,可以两项都填,不可以两项都不填
Changelog:
添加天安财险相关需求
Changelog:
页面跳转添加随路数据
Changelog:
增加对签名延签的规则设定 (这里做了修正)
添加白名单规则设定
Changelog:
增加错误代码解释
Changelog:
对支付校验中不可支付提供原因
对承保结果中承保失败提供原因
增加天安提供保单详情页面需求
Changelog:
更改全局流水号生成格式
S2I——&S2IDH
更改签名生成格式
去掉二次MD5加密形式
添加断链重发策略
用户购买车险流程:
用户登录东航APP积分商城,点击积分换车险的推广图片,东航判断是否是员工用户,调用融石引导接口,融石记录东航相关数据,并引导进入天安车险APP页面,用户填写个人信息车辆信息,以及车险信息,进行报价以及核保,核保成功后,天安车险调用融石接收接口,融石跳转到东航APP核保成功页面,东航APP确认用户登录,生成订单,引导用户进入支付流程,核保失败则调用融石接收接口跳转东航APP核保失败页面,东航提示用户核保失败,引导用户重新购买其他车辆车险。
由于东航要求域名不能变更防钓鱼,所以页面跳转将做地址映射:
|域名|值|说明|
|:----|:----:|
|ta-s2i.ceair.com|s2i.95505.com.cn|天安提供,东航设置|
|rongstone-s2i.ceair.com|s2i.rongstone.com|融石提供,东航设置|
|shop-s2i.ceair.com|shopping.ceair.com|东航提供,东航设置|
用户购买流程涉及页面和后台程序,比较复杂所以做出以下更详细的数据流转方式
页面信息跳转流程
用户点击车险引导图片,东航H5调用东航后台,东航后台判断用户是否登录
如果是登录用户,判断是否符合车险团购条件,如果符合条件,东航后台用用户相关信息制作串号(serialno),反之不制作或空
东航H5获得串号后,跳转到融石页面,融石接收串号以及相关随路数据。
融石保存串号和随路数据,并通过串号是否为空,分别跳转到天安不同渠道页面,有串号跳转到天安的东航团购渠道页面,反之,跳转到天安的东航普通渠道页面。
融石跳转天安页面的时候,将给一个随机码。
用户在天安页面填写车辆信息,并点击核保。
核保失败,天安调用融石接收核保结果接口,并将失败内容和融石给的随机码发送给融石。
核保成功,天安后台调用融石创建投保单接口,并传递随机码
融石通过随机码获得串号,并通过是否有串号判断是否使用原始价格还是团购价格,融石制作全局流水号,并发送给东航。
东航接收到核保信息和价格,以及串号,并对串号进行验证,如果为空,说明为普通价格,如果不为空,验证正确性,并记录为团购。
东航记录核保信息后返回 sessionid 给融石,融石收到后并将全局流水号返回给天安。
天安记录全局流水号,并带着随机码调用融石接收核保结果接口。
融石接收到随机码后,得到 sessionid 和东航随路数据,并调用东航指定页面。
东航收到sessionid 后,进行后续操作
车险团购流程
支付校对流程
用户在支付订单前,进行登录验证,确认用户登录后,用户填写使用积分数量,系统并计算出使用现金数额,用户点击下单,东航后台服务调用天安后台服务,进行保单支付校对,东航后台服务获得支付校对结果,当校对结果为可以支付,东航APP引导用户去支付费用,反之,此订单不可被支付,请用户重新购买此车险。
支付校对流程
用户进行支付,支付成功后,东航后台服务通知融石科技转账,融石科技通知天安系统(天安财险和天安APP)扣费,天安系统进行扣费,并将扣费结果回传给融石科技,融石科技判断扣费结果,扣款成功则通知东航后台服务转账成功,如果扣款失败,短信或微信方式告知人工查账续费,续费成功后,人工手动调用通知天安系统扣费,天安系统进行扣费。
用户支付流程
天安系统(天安财险和天安APP)进行承保,承保结果通知融石科技,融石科技通知东航后台服务,东航后台服务判断承保结果,承保通过,东航后台服务订单结束,承保拒绝,东航后台服务进入用户退款流程。(融石科技人工退款)。
东航状态列表
用户端状态
已投保待支付
天安生成订单号和投保号时通知东航接口后
用户端状态
已支付待承保
用户支付成功后到天安承保结果返回前
用户端状态
天安承保成功通知东航接口后
用户端状态
承保失败待退款
天安承保失败通知东航接口后
以上是用户端的状态,其中没有涉及和购买车险无关的状态,请东航自行补充上
东航业务状态列表
已投保待支付
天安生成订单号和投保号时通知东航接口后
用户支付前到天安进行支付校验返回结果为可支付后
用户支付前到天安进行支付校验返回结果为不可支付后
已支付待转账
用户支付成功后到通知融石科技转账前
已通知转账待确认
通知融石科技转账后到返回转账结果前
已转账待承保
融石科技转账成功到通知天安返回承保结果前
转账失败待退款
融石科技返回转账失败
融石科技返回承保成功
承保失败待退款
融石科技返回承保失败
以上是业务状态,其中没有涉及和购买车险无关的状态,请东航自行补充上
HTTPS 传输 端口443
Method:POST
Content-Type:application/json
Encoding:UTF-8
HTTP头名称
此字段为算法见下文
13位时间戳,需要判断接收到的时间戳 是否在当前时间的前后30分钟,如果不是,将按照无效请求处理
String temp = MD5(globalno + "I" + token.upper() + "I" + timestamp)
全局流水号 : S2IDH1
固定位(S2IDH) + 日期() +
最大10万(00001)
令牌,三方各持有一个令牌,接收方将按照自己持有的令牌进行判断,发送方将使用要接收方的令牌进行签名。令牌在做签名的时候需要全大写。令牌使用时为提供服务方,用自己令牌做签名验证,而调用方,用对端令牌制作签名
令牌持有方
DHXXXXXXXXXXXXXX
此项为配置项,在上线前统一修改,请勿写死在代码中
RSXXXXXXXXXXXXXX
此项为配置项,在上线前统一修改,请勿写死在代码中
TAXXXXXXXXXXXXXX
此项为配置项,在上线前统一修改,请勿写死在代码中
{statusCode:"000000",error:"错误信息",result:JSON}
在statusCode 为000000时,说明业务成功返回,此时result为返回结果,为必填项。
反之,说明业务失败返回,此时error为返回的错误信息,为必填项。
域名转向说明
tacx.ceair.com
td-pro.ta-by.com
天安提供,东航设置
cxrs.ceair.com
s2i.rongstone.com
融石提供,东航设置
shop-s2i.ceair.com
shopping.ceair.com
东航提供,东航设置
td-uat.ta-by.com
s2i.rongstone.com
shoppingactivity.ceair.com
东航相关接口
此URL供提交保单信息后回调使用,核保成功传入sessionid,核保失败传入失败信息
创建保单信息
此接口保存用户提交的保单信息和串号并返回sessionid
接收转账结果
此接口返回融石转账结果
接收承保结果
此接口返回承保结果
此页面为用户投保成功后在订单页面查看的保单详情页面
引导购买请求
此页面为引导购买并转向渠道页面
此接口校验保单是否可以支付
接收转账请求
此接口为请求融石转账
天安相关接口
此页面为引导用户填写车辆信息和报价核保页面
此页面为用户投保成功后在订单页面查看的保单详情页面
发送验证码
北京车险需要给车主发送验证码
验证验证码
北京车险需要验证给车主发送的验证码
此接口校验保单是否可以支付
接收扣款请求
此接口为请求天安扣款
创建保单信息
此接口保存用户提交的保单信息并返回globalno
接收核保结果
此页面为引导接收核保结果,传入randomno,核保失败传入失败信息
接收扣款结果
此接口发送扣款结果
接收承保结果
此接口发送承保结果
【】 这个是东航需要看到的接口说明
() 这个是天安需要看到的接口说明
购买流程接口
&a id="guidebuypage"& 1. 【引导投保页】(引导投保页)&/a&
东航——&融石
https://rongstone-s2i.ceair.com/s2i/guide.html
time=9 为防止缓存
p:随路数据
serialno:串号
https://rongstone-s2i.ceair.com/s2i/guide.html?p=XXXXXXXX& serialno=XXXXXXXXXX&source=ceair&backurl=https://shopping.ceair.com&time=9
&a id="index"& 2. 【用户填写投保信息页面】(核保页面)&/a&
融石——&天安
https://ta-s2i.ceair.com/s2i/ceair/index.html?randomno=XXXXXXXX&channel=XXX
randomno :随机码
channel:渠道
&a id="confirmbuypage"& 3. 【引导投保返回页】(接收核保结果)&/a&
天安——&融石
https://rongstone-s2i.ceair.com/s2i/ceair/confirm.html
randomno=XXXXXXXX:随机码
time=9 为防止缓存
%E8%BD%A6%E8%BE%86%E4%BF%A1%E6%81%AF%E9%94%99%E8%AF%AF 这个是"车辆信息错误"的URL编码
核保成功调用如下
https://rongstone-s2i.ceair.com/s2i/ceair/confirm.html?randomno=g3k2d3h5v4t3j1j&reason=&time=9
核保失败调用如下
https://rongstone-s2i.ceair.com/s2i/ceair/confirm.html?randomno=g3k2d3h5v4t3j1j&reason=%E8%BD%A6%E8%BE%86%E4%BF%A1%E6%81%AF%E9%94%99%E8%AF%AF&time=9
&a id="rscreateinsurancepolicyinfo"& 4. 【引导创建投保单信息】(创建投保单信息)&/a&
天安——&融石
https://rongstone-s2.ceair.com/s2i/createinsurancepolicyinfo
RequestBody:
globalno: "XXXXXXXXXXXXX",
//这里是随机码
(仍然用这个做签名)
appno: "",
//投保单号
name: "张德智",
//车主姓名
plateno: "陕CC0969",
//车辆号牌
rackno: "LNBSCCAJ6DR327158",
//车辆识别代码
engineno: "HK6799",
// 发动机号
registdate: "",
//车辆注册日期
brandmodelname: "北京BJA轿车",
//车辆品牌
citycode:"3440200",
// 车辆投保城市代码
provincename:"广东省",
// 车辆投保城市名称
cityname:"韶关市",
// 车辆投保城市名称
businesspre: "3762.58",
//商业险费用
jqxpre: "760.00",
//交强险费用
vehicletax: "720.00",
//车船税费用
sumpre: "5242.58"
//保险总费用
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "S2IDH1"
//返回全局流水号
&a id="createinsurancepolicyinfo"& 5. 【创建投保单信息】(东航创建投保单信息)&/a&
融石——&东航
https://shop-s2i.ceair.com/s2i/createinsurancepolicyinfo
RequestBody:
globalno: "S2IDH1",
//全局流水号
appno: "",//投保单号
name: "张德智",
//车主姓名
plateno: "陕CC0969",
//车辆号牌
rackno: "LNBSCCAJ6DR327158",
//车辆识别代码
citycode:"3440200",
// 车辆投保城市代码
provincename:"广东省",
// 车辆投保城市名称
cityname:"韶关市",
// 车辆投保城市名称
businesspre: "3762.58",
//商业险费用
(这个费用是原始价格)
jqxpre: "760.00",
//交强险费用
(这个费用是原始价格)
vehicletax: "720.00",
//车船税费用
(这个费用是原始价格)
sumpre: "5242.58"
//保险总费用
(这个费用是原始价格)
sellsumpre: "5242.58"
//保险总费用
(这个费用是优惠过的)
serialno: "XXXXXXXXXX",
(此项如果之前没有传递,为空)
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "23jkj"
//返回 sessionid
&a id="tashoporder"& 6. 【生成投保订】(东航生成投保订)&/a&
融石——&东航
https://shop-s2i.ceair.com/s2i/tashoporder
time=9 为防止缓存
%E8%BD%A6%E8%BE%86%E4%BF%A1%E6%81%AF%E9%94%99%E8%AF%AF 这个是"车辆信息错误"的URL编码
p=fasdfasdfasdfatqrre 此项为随路数据
核保成功调用如下
https://shop-s2i.ceair.com/s2i/tashoporder?sessionid=g3k2d3h5v4t3j1j&reason=&p=fasdfasdfasdfatqrre&time=9
核保失败调用如下
https://shop-s2i.ceair.com/s2i/tashoporder?sessionid=&reason=%E8%BD%A6%E8%BE%86%E4%BF%A1%E6%81%AF%E9%94%99%E8%AF%AF&p=fasdfasdfasdfatqrre&time=9
&a id="insurancepolicyinfo"& 7. 【用户保单详情信息页面】(保单页面)&/a&
东航——&融石
&1& 查看投保详细信息,用投保号做为参数
https://rongstone-s2.ceair.com/s2i/policyinfo.html?globalno=S2IDH1&appno=
当核保成功后,用户在订单页面,要查看保单详情时,将超链 &1& 页面,并提供全局流水号和投保号。只有当全局流水号和投保号完全正确时,才能显示投保详情信息,否则查无数据。
校验流程接口
&a id="rscheckorderpayablestatus"& 8. 【用户支付校验】(引导支付校验)&/a&
东航——&融石
https://rongstone-s2.ceair.com/s2i/checkorderpayablestatus
RequestBody:
globalno: "S2IDH1",
//全局流水号
//投保单号
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "success"
//返回 success fault unkown
&a id="checkorderpayablestatus"& 9. 【支付校验】(支付校验)&/a&
融石——&天安
https://ta-s2.ceair.com/s2i/checkorderpayablestatus
RequestBody:
globalno: "S2IDH1",
//全局流水号
//投保单号
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
如果支付校验失败,主要需要提供校验失败原因,并分为两大类:
此投保车辆再次投保后,并再次进行支付校验。
此投保车辆再次投保后,支付校验也不会通过。
&a id="getverificationvode"& 10. 【发送验证码】(发送验证码)&/a&
融石——&天安
https://ta-s2.ceair.com/s2i/getverificationvode
RequestBody:
globalno: "S2IDH1",
//全局流水号
//投保单号
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
&a id="verificationvode"& 11. 【验证验证码】(验证验证码)&/a&
融石——&天安
https://ta-s2.ceair.com/s2i/verificationvode
RequestBody:
globalno: "S2IDH1",
//全局流水号
//投保单号
issuecode:”123456”
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
转账流程接口
&a id="recivetransferrequest"& 10. 【发送转账请求】(转账请求)&/a&
东航——&融石
https://rongstone-s2i.ceair.com/s2i/recivetransferrequest
RequestBody:
globalno: "S2IDH1", //全局流水号
appno: "",//投保单号
consumesumpre:"4242.58",
//收取用户的总价(现金+积分*兑换率)
score:"2000",
//用户使用积分数量
cash:"3242.58",
//用户使用现金数量
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
&a id="recivepayrequest"& 11. 【接收转账请求】(接收扣款请求)&/a&
融石——&天安
https://ta-s2i.ceair.com/s2i/recivepayrequest
RequestBody:
globalno: "S2IDH1",
//全局流水号
//投保单号
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
&a id="recivepayresult"& 12. 【融石接收转账结果】(发送扣款结果)&/a&
天安——&融石
https://rongstone-s2i.ceair.com/s2i/recivepayresult
RequestBody:
globalno: "S2IDH1", //全局流水号
payno:"XXXXXXXXXXXXXXXXX",
//交易流水号,当返回支付结果时,此项为和通联支付的交易流水号
result:"success",
//success 为扣款成功,为fault 为扣款失败
//扣款成功的时候 此项为空,扣款失败的时候 此项为失败原因
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
&a id="recivetransferresult"& 13. 【接收转账结果】(发送扣款结果)&/a&
融石——&东航
https://shop-s2i.ceair.com/s2i/recivetransferresult
RequestBody:
globalno: "S2IDH1", //全局流水号
result:"success",
//success 为转账成功,为fault 为转账失败
//转账成功的时候 此项为空,转账失败的时候 此项为失败原因
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
承保流程接口
&a id="rsreciveacceptanceresult"& 14. 【融石接收承保结果】(发送承保结果)&/a&
天安——&融石
https://rongstone-s2i.ceair.com/s2i/reciveacceptanceresult
RequestBody:
globalno: "S2IDH1", //全局流水号
polno:"", //保单号 当承保失败
result:"success",
//success 为承保成功,为fault 为承保失败
//承保成功的时候 此项为空,payresult 承保失败的时候 此项为失败原因
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
如果承保失败,提供失败原因。方便用户后续操作后,可以重新购买车险
&a id="rsreciveacceptanceresult"& 15. 【接收承保结果】(发送承保结果)&/a&
融石——&东航
https://shop-s2i.ceair.com/s2i/reciveacceptanceresult
RequestBody:
globalno: "S2IDH1", //全局流水号
polno:"", //保单号 当承保失败
result:"success",
//success 为承保成功,为fault 为承保失败
//promiseresult 未success 的时候 此项为空,promiseresult 为fault 的时候 此项为失败原因
ResponseBody:
statusCode: "000000",
//成功返回 6个0
error: "",
//错误信息
result: "ok"
传递的https中消息体为空(body==null)
传递的https中消息体不为JSON
此IP禁止访问错误
Timestamp不存在
Signature不存在
Timestamp格式错误
Timestamp不在现在时间范围
全局流水号不存在
全局流水号已存在
投保号已存在
保单号已存在
保单号为空
断链重发策略
1、当调用接口时,timeout时长为:65秒
2、返回的HTTP状态码 不是200 (此时需要记录日志)
5秒、1分钟、5分钟,当需要重发时,将有3次重发机会,如果仍然不能正确返回(HTTP状态码为200)将进行报警处理,具体报警处理方式不做统一说明。
签名相关说明
调用端 使用对端所属的Token进行签名。
服务端 使用自己所属的Token进行验签。
例如 东航请求支付校验到天安,这里东航就是调用端,所以要用TA的Token进行签名发送给天安,而天安这个接口是服务端,所以要用自己的Token(TA)进行验签。
服务器白名单
接口在做服务端时,被调用时,需要用对端的服务器白名单进行服务器验证,这里的白名单可以是列表,只有在列表中的服务器访问才能通过白名单验证。
页面随路数据
东航用户点击推广图片后开启
这里p是随路数据. 如果无此值,默认为字符串空
当天安核保完成,准备跳回到东航页面时,需要将上述的随路数据原样返回
核保成功调用如下
核保失败调用如下
天安财险相关流程
1. 支付校验流程
用户填写完车辆信息后,并回转到东航订单支付页面。当用户点击支付订单时,东航后台服务调用同道后台服务支付校验接口,同道收到后重组数据,调用天安财险支付校验,天安财险进行校验,将校验结果同步返回给同道,同道判断结果信息,将是否可支付同步回传给东航,整个调用为同步链式调用。
内部支付校验流程
内部支付校验接口
同道调用 RequestBody,天安财险返回ResponseBody
RequestBody:
//投保单号
成功 ResponseBody:
result:"success"
失败 ResponseBody:
result:"fault"
errorcode:"102303"
支付校验成功,同道直接返回东航成功
支付校验失败,需要将失败原因(errorcode)返回给同道,同道需要根据原因分析出两类错误:
此投保单再次校验,有可能会成功 (此种情况类似是由于车辆有未消的罚单导致的校验失败)
此投保单再次校验,不可能会成功 (此投保单过期,或其他情况)
同道需要重新组织错误信息,并定义出描述文本 返回给东航校验失败
2. 内部代收承保流程
融石后台服务得到东航后台服务的转账请求后,融石调用同道转账接口,同道收到请求后返回ok,并调用天安财险代收接口,天安财险收到后返回ok,并调用通联进行代收,如返回的状态为中间状态,天安财险需根据通联文档提供的查询策略调用通联支付查询接口,多次调用后,当获得的状态为最终结果(代收成功或代收失败)后,天安财险调用同道的接收结果接口(参数为代收结果)。同道收到结果后调用融石接收支付结果接口。
当天安财险得到通联的最终结果为代收成功,天安财险将进行承保,并将承保结果发送到同道的接收结果接口(参数为承保结果),同道也将承保结果发送到融石的接收承保结果接口。全流程均为及时返回并得到结果后回调。
由于上海地区购买车险比较特殊,需要和中保付对接,所以天安财险在支付前,需要判断是否是上海地区车险,来决定是调用通联支付,还是调用中保付支付。
内部代收承保流程
内部代收接口
同道调用 RequestBody,天安财险返回ResponseBody
RequestBody:
globalno: "S2IDH1",
//全局流水号
//投保单号
ResponseBody:
result:"ok"
接收结果接口
天安财险调用 RequestBody,同道返回ResponseBody
RequestBody:
globalno:"S2IDH1",
//全局流水号
appno: "",
//投保单号
result:"paysuccess",
//paysuccess:代付成功, payfault:代付失败 , acceptancesuccess:承保成功 ,acceptfault:承保失败
payno:"XXXXXXXXXXXXXXXXX",
//交易流水号,当返回支付结果时,此项为和通联支付的交易流水号
//保单号,在返回承保结果,并且承保成功时返回
errorcode:"102303"
//错误代码,当代付失败,或承保失败时,此为失败的错误代码
ResponseBody:
result:"ok"
这里在支付失败的情况下,需要做到 从errorcode能辨别出是余额不足导致的支付失败,还是其他原因导致的支付失败
这里在承保失败的情况下,需要做到 从errorcode能辨别出是此车辆是否还能承保。
3. 对账方案
1. 天安财险-通联支付
在通联支付的页面上下载流水单(具体地址请和通联技术沟通),这里需要考虑两个流水(1. 上海地区车险 2. 非上海地区车险) ,将此流水和本地数据进行比对。
2. 同道出行-融石科技
同道出行提供业务流水单,融石科技也提供业务流水单。相互比对
3. 融石科技-通联支付
在通联支付的页面上下载流水单(具体地址请和通联技术沟通),这里需要考虑两个流水(1. 上海地区车险 2. 非上海地区车险) ,将此流水和本地数据进行比对。
4. 融石科技-东方航空
东方航空提供业务流水单,融石科技也提供业务流水单。相互比对
这就是我,一个意想不到的我
东航积分换保险 部署相关内容 域名指向 域名目标域名cxrs.ceair.coms2i.rongstone.comtacx.ceair.comtd-pro.ta-by.com Token 名称值东航DH-0A7DB109C7DH融石RS-EAB9C3P9T1RS天安TA-4...
1,东航相关接口 &1&模拟东航的创建保单接口的URL(remote) servlet/createinsurancepolicyinfo &2&存储东航的创建保单返回结果的URL
(local) servlet/simulatorresponsecreateinsura...
现支付宝的通知有两类。A服务器通知,对应的参数为notify_url,支付宝通知使用POST方式B页面跳转通知,对应的参数为return_url,支付宝通知使用GET方式 (通知地址不需要像以前一样去账户内设置,而是由客户在支付的时候通过参数传递给我地址。 例如 notif...
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金 相信有很多...
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金相信有很多朋友...
说实话,小米是你最佳的选择,其次是荣耀。 先说小米 小米的利润绝对是国产手机中相当低的,小米走的是量,特别是红米系列。首先要明确小米不是一家手机公司,小米是什么样的公司?这个问题恐怕雷军也不好用一句话概括。但是,现在可以明确的是小米手机业务是小米公司的一个大型广告。雷军从m...
韦以安一觉睡到了下午。这一觉,睡得天地沉沦,举世无双,醒来觉得又是一条好汉。他看看手机已经五点,就起身洗脸刷牙,整理行李,将自己的物品转进房间。书桌的抽屉一打开,里面躺着几本书,一本东周列国志,一本维罗尼卡决定去死,一本罗马人的故事I,虽然风格迥异,但有个共同点,都在扉页上...
昏昏沉沉的奔赴机场途中,手机突然振动。还在想说没和其他人说过我的航班,怎么这么早就有人找,打开却原来是被奕晴翻牌了~~~晴儿你真的每天都不用睡的么? 这么一大早的收获好消息,顿时觉得瞌睡去无踪,精神更出众,感觉这趟gap之旅,会非常之顺心如意了!表白奕晴——爱你哦~ 回到这...
不久前我也是个手机控,每天和它相依为命,无论是在教室食堂还是图书馆都会有它的陪伴,当然睡前也少不了和它的缠绵,常常在深夜才能入睡。 所以脸上经常附着几颗痘痘,眼睛干涩疼痛,颈椎肩膀也经常是僵硬的。由于经常使用耳机,耳朵也经常感到不适。 其实我用手机也没做什么有意义的事,无非...
对ios 类私有属性的访问和修改有两种方法: 一种方法是通过KVC进行处理, 一种就是Runtime KVC (使用kvc需要知道属性的名字) Runtime}

我要回帖

更多关于 js调用外部接口 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信