Submitted by gouki on 2011, April 17, 10:52 PM
之所以转载这篇文章,不是因为他实现了多少代码,而是说文章中会有一些遇到的问题和解决方法。
前一段时间也做了alipay和tenpay的接口编码,其实说白了这些东西都差不多。只是因为这篇文章中说的是https接口,会有点不太一样。
alipay和tenpay最终都是跳转到对方的网站上做进一步的支付的,paypal可能不太一样(没仔细折腾过,所以才要转这篇)
上原文:http://shiningray.cn/paypal-ipn.html
最近终于搞定了该死的Paypal ipn,特地在此留下点东西备忘。
所谓paypal ipn(Instant Payment Notification),就是Paypal开发的一种能主动通知第三方卖家系统交易状态的一种机制。IPN的原理很简单,就是当产生了一个交易之后, 交易状态发生变化时,如用户已经付款、或者退款、撤销时,Paypal利用常用的HTTP POST方式,将交易的一些变量提交给网站的某个页面(称之为IPN Handler),当这个页面接受到请求时候,将这些数据原封不动加上一个指示验证的cmd=_notify-validate
,POST回Paypal的接口地址,如果数据正确,那么Paypal返回字符串VERIFIED,否则为INVALID,如果结果为VERIFIED,那么你的程序就可以使用这些数据进行操作。
但代码的调试是一件很痛苦的事情,因为作为第三方开发人员,不可能开两个帐号,每次测试还要之间交易一些钱,所以Paypal专门开发了Sandbox给开发人员进行开发,首先到https://developer.paypal.com/ 注册一个开发帐号,好了之后再进入Sandbox建立测试用的Paypal虚拟帐号(至少应该建立一个Business的和一个Personal的),这 种账号注册方法和Paypal的流程一样,信息可以是假的,包括银行帐号、信用卡(其实Paypal Sandbox会自动生成一些随机的号码)。接下来需要激活Paypal Sandbox的虚拟帐号,注意,这里不管你在Paypal Sanbox注册时填什么邮件地址,有任何发送到虚拟帐号所填邮箱的邮件都存会在开发帐号的管理界面中的Email页(导航栏上有)中。登录 Sandbox的虚拟Paypal环境,还需要验证虚拟帐号的银行,这里可以随便填,然后通过Add Funds来给账户充值(想填多少填多少)。然后,还需要激活IPN的选项,在Business的那个账户的Profile设置页面中,点击,然后点击 Edit按钮,打开IPN,这里如果你使用的是固定的IPN Handle,可以直接将地址填入。
接下来,我们测试的时候,应该将Paypal接口的地址设置为https://www.sandbox.paypal.com/cgi-bin/webscr
最后基本的流程为:
- 用户在我们的网站上选择商品、放入购物车,然后检查准备支付
- 网站根据购物车中的商品,生成Paypal的支付表单(也是提交到上面IPN用的Paypal接口地址),包含了此次交易的一些信息(下次会专门找机会解释一下)。并在自己的数据库中生成一张订单记录。
- Paypal在Session中记录下这些交易信息
- 用户用Paypal账户登录Paypal(Sandbox用Sandbox的虚拟帐号),复查明细,点击Pay按钮
- Paypal进行交易处理,如果我们的Paypal收款帐号在接受帐款上没有什么问题(没有特别的需要在界面上“Accept”的地方),交易完成,那么Paypal会发送一个IPN,并发送提示邮件。
- 我们IPN Handler接受到信息,首先向Paypal进行校验,如果信息正确,然后根据信息和自己数据库中进行比对,如果无误,可以将支付信息保存,并修改订单状态。
- 然后Paypal会显示一个界面表示交易完成,此时如果用户点击“Return”按钮,Paypal会将用户送回我们网站指定地点。
- 我们网站迎接用户回来,向用户表示感谢,并进行提醒,给出订单号等等。
整个流程基本如下,不过其中有很多要注意的地方:
- 我们看到了,接口地址是https开头的,也就是要求使用SSL进行连接, 其实Paypal Sandbox可以使用http,但是最后实际的Paypal接口,不支持http协议,所以如果你用PHP写IPN Handler脚本的话,在验证信息的代码部分,如果简简单单使用fopen、HTTP_Request之类的工具是没用的,PHP的socks库不支持SSL,应该使用curl,有两种方法,一个是使用PHP扩展中的libcurl,Paypal官方发布的SDK中便是使用的这个方法,但Paypal的SDK非常复杂,如果想自己写,可以使用Snoopy,一个简单实用的PHP请求库(它自己说是模拟了浏览器的行为),而它使用的是Curl的可执行文件,通过管道获得结果,而非php的libcurl,所以自己cURL的主页上下载一个支持SSL的编译版本,可能还需要安装OpenSSL,不过对于Linux系统,可能应该会都带。
- 在支付表单中,可以自己设置
notify_url
字段,来指定此次交易的信息应该发送到哪个地方,这样就可以覆盖在Profile中我们的设置,另外,这个字段要进行urlencode
。
- 我们得到的IPN信息中,
status
对应的便是交易状态,如Complete
表示完成,首字母大写,而验证结果则是VERIFIEY
或者INVALID
,全部大写,具体的内容,可以查看Paypal官方的文档订单管理整合指南。
--EOF--
文章虽老,但值得参考一下。
Tags: paypal, payment
PHP | 评论:1
| 阅读:20567
Submitted by gouki on 2010, May 10, 9:21 AM
不知道从什么时候起,网页上那烦人的alert,prompt,confirm框都成了很多人讨厌的对象,因为他的样式太丑了。ExtJS中的alert就是适合他自己的样式的弹出,可是其他不是框架的代码中要有漂亮的对话框怎么办?
jQuery Alert 是jQuery的官方插件,Ymprompt是国内开发人员写的,其于jQuery的一个插件,当然是各有所长。
jQuery Alert相对比较简单一点,用法也简单,而Ymprompt就复杂的多了。
这是关于jQuery Alert的介绍:
http://www.cnblogs.com/whitewolf/archive/2010/05/09/1731120.html,介绍请移步左边的链接
- 这个Jquery插件的目的是替代JavaScript的标准函数alert(),confirm(),和 prompt()。这个插件有如下这些特点:
-
- 1:这个插件可以使你可以支持你自己的css制定。使你的网站看起来更专业。
- 2:允许你自定义对话框的标题。
- 3:在IE7中,可以使你避免使用JavaScript 的prompt()函数带来的页面重新加载。
- 4:这些方法都模拟了Windows的模式对话框。在你改变改变浏览器窗口大小时候,它能够自适应用户窗口的调整。
- 5:如果你引入了jQuery UI Draggable plugin插件,那这个插件也可以被自由拖动。
而Ymprompt在这里有一个简单的介绍:http://www.ajaxbbs.net/test/ymPrompt4.0/demo.html,写的很多,但都是document,并非介绍,所以我就不贴了。
jQuery Alert在官方有的下载,我也就不提供啦。可以尝试一下。
在ThinkSNS中,用的是ymprompt,所以我才看了一下这玩意,但并非能够完全满足我的需求,如果仅仅使用简单的alert、prompt、confirm之类的,应该是够用了。
Tags: jquery, jqueryui, alert, ymprompt
Javascript | 评论:0
| 阅读:21550
Submitted by gouki on 2009, June 19, 10:05 AM
据cnbeta报道:龙芯获MIPS专利授权 将支持Android
6月16日消息,中国自主研发的CPU龙芯近日获得了MIPS授权。MIPS Technologies周一称,中国科学院计算技术研究所(简称计算所)已经获得MIPS32与MIPS64架构的授权,技术将用于开发龙芯CPU。 龙芯之痛,卡在专利关口
知名IT杂志《PC World》撰文称:“龙芯的支持者希望终有一天这款产品能渗透外国市场,但现在使用该芯片的设备在中国也寥寥无几,龙芯的MIPS核心使得它与英特尔AMD的X86结构PC不兼容。”龙芯使用MIPS架构,既是无奈,更是被迫。
在中国自力更生研发CPU的过程中,曾使用用“MIPS-like”的词汇来形容龙芯(修改版本的MIPS),此举招致MIPS Technologies的不满,因而一直未获授权。这几年来,计算所不断与MIPS Technologies谈判,希望获得技术授权,但一直未果。无奈之下,计算所只好退而求其次,与意法半导体合作,因为它拥有MIPS授权。以龙芯为核 心的CPU也在意法半导体的网页有所介绍,其名字为更商业化的“Loongson”。龙芯难产,卡在专利一关。
龙芯将支持Android 年底推新款低价CPU
中国科学院计算技术研究所“龙芯1号”研制组组长胡伟武说,尽管这几年龙芯推出了新品,但一直不准在上面贴上‘MIPS-compatible’标签。现 在问题终于解决了。他还表示,研究所正在对一些芯片做兼容性测试。获得MIPS授权是一个大进步,它意味着龙芯可以支持Google的Android平 台。胡伟武表示:“无论是否推出装有龙芯CPU与Android的设备,计算所都将与寻找一些商业伙伴,努力将芯片植入它们的产品中。”
MIPS Technologies公司亚太区的副总Mark Pittman说:“在我们看来,授权将缩短龙芯进入市场化的时间。”因为计算所再也不用通过意法半导体来设计芯片了。
据计算所介绍,龙芯将同时进入高端与低端产品线,设计完全其于第一款高端芯片——4核心龙芯3代,它也是第一款多核龙芯。今年晚些时候,计算所还将推出低端的龙芯,即1GHz的Godson 2g。
附:
MIPS Technologies是一家设计制造高性能、高档次及嵌入式32位和64位处理器的厂商,在RISC处理器方面占有重要地位。1984年,MIPS计算机公司成立。1992年,SGI收购了MIPS计算机公司。
有人说,龙芯买授权花了N多钱,还有人对龙芯购买授权很不理解,为此,龙芯论坛超版九门提督这样说:
要说明白龙芯为什么拿MIPS授权要回答一下几个问题:
1、龙芯为什么要选择MIPS指令集而不是x86指令集?
2、龙芯为什么是现在才取得授权而不是8年前?
3、现在MIPS授权对龙芯发展有什么帮助?
一、现在回答第一个问题,龙芯为什么要选择MIPS指令集而不是x86指令集?
大家应该都知道,计算所准备研制龙芯是2000年左右的事,2001年5月正式开始研制,第一个要解决的问题就是选择什么架构什么指令集,当然龙芯选择了RISC架构,而不是CISC架构。架构的事我们不谈(如果将来有人由于架构的关系说龙芯是冒牌货,没有技术含量,忽悠纳税人的钱,就如现在的情况,那我们再谈,当然架构也是广义指令集)。
确定了架构开始确定使用何种指令集,两条路:一、自己开发指令集;二、采用已有指令集。
要自己开发出指令集并不难,我国早期的计算机采用的就是自己开发的指令集,如果大家想知道相关的情况,可在百度输入“夏培肃”来了解,比如107计算机、银河系列计算机,在局部取得了成功,但是它们是用在专有领域,不存在和别人竞争通用市场的问题。外国科技企业再牛也不敢找中国人民解放军的麻烦不是么?
难就难在指令集要为整个业界所接受,成为标准之一并推向世界。
打个比方,我开发了一个名叫“小强”的指令集,研发了基于“小强”的CPU,然后呢?然后你要卖CPU啊!可是你这个CPU,市面上没有配套的操作系统,更别说应用软件!你怎么办?你要开发基于“小强”的编译器、BIOS、操作系统、应用软件……。你要把这些东西都推广出去,让别人去接受,让别人把自己现有的东西都迁移到“小强”上来——这是一个何其浩大的工程——用屁股想都知道不可能。你会发现你家除了一窝“小强”什么也没有!!!
以上说了七八轱辘的话,我想我们大家应该有个共识:龙芯不能独创一个全新的指令集。如果还有朋友不同意这个观点,那么以下的文字对你来说都是废话,你可以不用看了。
龙芯要选择已有的指令集,现在指令集有很多,但可供龙芯选的稍微思考一下就只剩X86和MIPS了,当然还有ARM,但ARM得授权方式虽然好,却使龙芯失去了独立的研发经历,没有任何安全可言。
要选择X86么?我们知道计算所对龙芯的定位是通用CPU,通用CPU的老大是INTEL,龙芯只要研发出来,不论性能如何,从性质上说,就是INTEL的竞争对手,何况背后还有中国政府的支持。如果我是INTEL我会很高兴计算所选择了X86指令集,我会提供给计算所不高不低的技术支持,要他研究一个不好不坏的CPU,等他壮大一点,我就掐死一点,造个舆论,骂下计算所,多要点授权费,然后再多给点授权,让龙芯的市场再大一点,然后如此这般再来一边,最后计算所痛苦的发现,原来替INTEL做嫁衣裳。
最后李国杰和胡伟武被骂成汉奸,买办,卖国贼,白痴,最终被钉在历史的耻辱柱上。
亲爱的你还会选择X86架构么?
最后只剩MIPS了。MIPS的最大竞争对手是谁呢?自然是X86啊,换句话说几乎就是INTEL啊。从这个程度上说龙芯和MIPS的大目标是一致的。
尤其重要的是,MIPS经过几十年发展,是一种优秀的精简指令集,但是MIPS被SGI抛弃后就江河日下,上个世纪90年代的辉煌已经过去,现在几乎沦落到靠卖个指令集的授权吃饭,今天上了下ARM和MIPS的网站,两者气象完全不同,MIPS卖了个授权给计算所,就毫不犹豫的把新闻放在公司首页,如此可见一般。
通过提供MIPS指令集授权来获取授权费,这是MIPS现在比较现实的商业模式,承认与否也是这样。
到现在为止,大家应该明白,选择MIPS指令集是龙芯最理想也最现实的选择。
好了,第一个问题,回答完了。
二、龙芯为什么是现在才取得授权而不是8年前?
计算所的一帮学究刚开始设计龙芯的时候,估计也没有仔细考虑将来产业化的情况,毕竟当时连什么时候能设计出来都没谱。但是关于指令集的问题,是经过仔细考虑的,在设计时采用MIPS指令集,几乎所有指令都是过了保护期的,可以自由使用,虽然落后,但那是千锤百炼,经过市场检验的东西。其它没有开放的指令,通过用其他相似指令代替和与ST的合作来解决。
网上传说计算所花了500万美元获得了mips的正式授权,此价格我还没有确认,但肯定是不菲的,500万美元合3500万人民币左右,这可不是一笔小钱!大家想想八年前MIPS心气多高啊,当时的要价绝对要比500万美元高多了,计算所哪出得起啊。龙芯刚刚开发的时候,是计算所自己的1000万人民币创新基金拿出来搞的,可没有什么国家的科研经费(你要说计算所属于国家,这钱也是国家的,哪我没话可说)。这点钱,当时的MIPS绝对看不上眼,而且MIPS当时认为中国人开发通用CPU有一种中国男足拿世界杯的感觉。
八年以后,龙芯虽然没有多好,但他有了自己的产品线,有了明确的发展规划,有了初步的产业化成果,有了国家的国民的大力支持。
所以,为了MIPS和龙芯的发展,龙芯拿到了授权。
三、现在MIPS授权对龙芯发展有什么帮助?
龙芯发展了8年多,大部分指令集是MIPS的,受专利保护的指令集自己做了扩展,但是还是对MIPS指令集的软件在龙芯上的使用有很多冲突,现在好了,基于MIPS的软件都可以使用了。龙芯有了具有自主知识产权的架构,又能使用MIPS所有的指令集,现阶段来说,是最好的结果。好多朋友以为,我们采用MIPS指令集就是采用了MIPS提供的核,这根本就两回事。这种情况,一般出现在ARM的合作伙伴上。
在国外销售不会有版权冲突,不会再仰仗ST这个第三方,以后ST就是纯粹的代工企业。将来和ST谈起来,筹码更多了。
还有 很多很多。。。。
就像当年没有钱拿授权现在可以一样。我希望龙芯将来强大了,直接买下MIPS公司。这才是终极解决方案——这也是我内心的深切愿望。
本文最初在yhustc的博客上看到,全部内容来自于网上
引:
1、妓者? http://yhustc.com/Blog/175.html
2、龙芯获MIPS专利授权 将支持Android http://www.cnbeta.com/articles/86691.htm
3、关于龙芯拿MIPS授权的再一点理解 http://www.lemote.com/bbs/viewthread.php?tid=23886&extra=page%3D1
Tags: 龙芯, mips, android
Misc | 评论:0
| 阅读:21711
Submitted by gouki on 2008, November 9, 12:12 PM
瑞x最近是新闻不断,这不,360上也弹出了提示框,点击进去之后,发现是最新的一些事情汇总吧。(回复里有最近发生的一些事)
瑞星是2000年左右用的软件,01年之后,一直用诺顿直到05年,然后就开始啥杀毒软件也不装了。到06年只装一个360安全卫士。
当然,并不是说我是360的粉丝还是啥的,360对我来说,我只用了其中的几个功能
1、查杀木马和恶意软件 (这也是大多数人用它的原因吧)
2、启动项的修改,不需要我改msconfig了。还有注册表也不需要我动了
3、补丁下载,这个才是最方便的。因为不喜欢开自动更新,怎么知道最近需要更新哪些补丁,它会提示我
4、屏蔽一些恶意网站和控件啥的。
5、几个实时的保护(u盘、ARP、插件,漏洞等)
除此之外,其他没有什么可以值得我使用的了。一些服务的停止往往都是我安装好系统后就直接手工停掉的,用了这么多年的瘟多死,该用哪些服务,不用哪些服务,基本上还是知道的。
附上360的公告内容:
http://baike.360.cn/recommend/3366191/14222872.html
- 11月7日,瑞星向用户发布公告称,部分用户因瑞星卡卡上网安全助手BUG导致Outlook Express邮件目录被删除、Cookie丢失,给部分用户造成很大的麻烦和损失,并就此向用户表示歉意。
-
- 另据据新华社11月7日电,7日上午,一些使用瑞星卡卡助手和Outlook Express的用户发现,邮件莫名其妙丢失。据业内人士估计,大概有上千万网民受到影响。瑞星发言人称,不能保证用户所丢失的数据能够完全恢复。
-
- 从11月7日上午开始,很多用户纷纷到360百科上发布求助信息,这些用户因大量工作或私人邮件丢失而万分焦急,迫切希望得到360安全中心的帮助。为了帮助用户减少损失,360安全中心的专家网友向您推荐了两套目前比较可行的解决方案,详情请点这里:方案1 & 方案2
-
- 据360安全专家表示,使用以上修复工具,可以修复大部分用户的大多数邮件数据。但如果有些用户的邮件Cookie已经丢失,邮件数据将无法得到恢复。在此,360安全中心建议用户,慎重选择安全软件。
-
- 如果您在恢复工具的使用中遇到任何问题,请到360求助中心发帖求助:http://baike.360.cn/help.html,360安全专家将为用户在线提供帮助。同时,也希望广大360网友献计献策,给受害用户推荐或提供更完美的解决方案。
Tags: 瑞星, 360, 邮件误杀, 卡卡
Software | 评论:1
| 阅读:20825