存档

‘NodeJS/Express’ 分类的存档

解决Safari对第三方域在iframe下Cookie不能保存问题

2011年9月25日 影木 3 条评论

safari logo

问题描述

Safari浏览器默认的Cookie设置是仅接受当前浏览的站点。也就是说当你浏览www.a.com的时候,其中有个iframe是www.b.com,那么a站点cookie会被接受,但是b站点的cookie将被屏蔽。

在其他浏览器下也有类似的默认设置,但是类似IE等可以通过Header中P3P头的设置告知浏览器接受第三方Domain的Cookie,方法可参考:link。简单的说就是个协议对浏览器说我是好人,请允许我进行这些操作之类bhlabhla。

但是Safari是无效的=-=网上搜了一下在Stackoverflow上看到一个解决方案。

解决原理

返回一个页面,其中运行一段代码生成一个iframe和一个form,将form的action指向服务端某页面,target指向iframe。伪造一个用户submit操作,在这个submit操作中产生一个Cookie, onload后刷新重新刷新主页面即可使用伪造的用户操作产生的cookie。

阅读全文…

多平台SNS Client for NodeJS 发布

2011年9月22日 影木 没有评论

nodejs logo开源项目:

名称:多平台SNS Client for

开源协议:MIT

项目地址:https://github.com/btspoony/node-snsclient

简介:

基于NodeJS的多平台整合SNS Client,可实现在多个SNS平台使用一套接口开发基于NodeJS的社交游戏服务端接口。是我将正在做的项目中的sns模块分离出来独立模块,我会进行持续维护,并添加持续获取好友发邀请等公用功能(所有平台都用统一接口)。

目前支持人人、微游戏、新浪微薄(这两不一样的,微博应用只能使用部分SNS功能),未来将添加facebook, qzone, pengyou, g+等SNS平台。

依赖库:

  • 需要运行于Express框架下
  • 需要Node-Oauth库支持,(包含在项目中)

安装使用:

  1. 可从github上得下来后直接放入项目
  2. 可以使用npm install snsclient 来进行安装,我将不定期更新发布版到NPM

欢迎各种fork!

分类: NodeJS/Express 标签: Nodejs, SNS, Social Game