如何在Google App Engine中"运行""Paypal订阅服务"?

Jml*_*ick 4 python google-app-engine paypal paypal-ipn

在此之前,我想让你知道我是关于开发"付费"webapps的完全新手.我一直在阅读一些关于如何将Paypal的IPN与Google App Engine集成的帖子,我对这个主题有一些疑问,事情是这样的:

我想在我的webapp中使用paypal的"订阅"按钮(这是使用GAE的Python基础开发的),因此如果用户不想再使用免费版本,用户可以订阅高级版本...

我正在阅读,paypal可以帮助我通过IPN管理关于用户控制的事情,但我必须在我的GAE应用程序中设置它,我不知道如何......例如:

通知URL必须指向paypal的配置文件配置?我相信它必须指向我的应用程序中的python脚本但我不确定...如果这是真的,这个python脚本必须有什么?

然后,在完成之后,我如何让paypal为我的用户创建用户名和密码,以使非高级用户不受"高级功能"的影响?我不希望链接到某些东西,我需要解释如何在GAE上的基于Python的应用程序中实现"Paypal订阅服务",以便提供"高级服务"和免费服务,

谢谢,希望你能帮忙

Rem*_*hem 6

做一个简短的回答(因为我不确定你问题的范围是什么).

  1. 维护您的数据模型不是贝宝的工作.您需要与用户一起创建数据库条目.

有关此示例,请查看Google的文档

http://code.google.com/appengine/docs/python/gettingstarted/usingusers.html ,更重要的是http://code.google.com/appengine/docs/python/gettingstarted/usingdatastore.html

因此,您可以创建此类数据模型:

class Users(db.Model):
  gae_user_object = db.UserProperty()
  premium_member = db.BooleanProperty(default=False)
Run Code Online (Sandbox Code Playgroud)

(当然,既然你想跟踪订阅,这将是太有限但你可以得到这个想法).

并使Paypal调用的脚本触发一个函数来改变*premium_member*的值...

  1. 是的,paypal即时付款通知会调用你的应用程序(你可以在Paypal界面的某个地方指定什么uri,所以你可以选择将它映射到哪个,最好使用你的https appspot子域).你的应用程序将需要存储paypal刚刚发送的内容,并在官方化任何内容之前,使用刚刚发送的参数调用Paypal服务器,以确定第一个是由Paypal而不是其他人真正制作的.

要查看相关的工作示例,请查看http://blog.awarelabs.com/2008/paypal-ipn-python-code/http://groups.google.com/group/google-appengine-python/browse_thread/ thread/d76701e774e308be,即使这两个例子都很糟糕(它可能会起作用,但不要像在生产中那样使用它们,因为你最终会得到真正糟糕的错误管理).