0
今天我试图让django活塞和ExtJS工作。我用ExtJS宁静的例子和活塞的例子来创建一个有点宁静的webapp。一切工作正常,除了身份验证。(O)Auth与ExtJS
什么是使用ExtJS获得Basic/Digest/OAuth身份验证的最佳方式? Atm我不确定在哪里设置用户名/密码。
感谢
今天我试图让django活塞和ExtJS工作。我用ExtJS宁静的例子和活塞的例子来创建一个有点宁静的webapp。一切工作正常,除了身份验证。(O)Auth与ExtJS
什么是使用ExtJS获得Basic/Digest/OAuth身份验证的最佳方式? Atm我不确定在哪里设置用户名/密码。
感谢
如果你想使用活塞与ExtJS的,我会建议写一个匿名处理程序,检查用户通过标准的权威性登录。
试试这个:
class AnonymousUserProfileHandler(BaseHandler):
fields = ('title', 'url', 'affiliation')
model = UserProfile
def read(self, request, nickname):
profile = UserProfile.objects.get(nickname=nickname)
if request.user == profile.user:
return profile
class UserProfileHandler(BaseHandler):
anonymous = AnonymousUserProfileHandler
allowed_methods = ('GET')
fields = ('title', 'url', 'affiliation')
model = UserProfile
def read(self, request, nickname):
profile = UserProfile.objects.get(nickname=nickname)
return profile
在这个例子中,当UserProfileHandler被调用时,没有任何授权,将其委托给匿名处理。匿名处理程序通过通常的request.user模式检查用户是否登录。如果有一个有效的用户,它将返回他们的配置文件对象。显然,你会将这个视为是需要登录的标记。
重点是:当extJS进行JSON调用时,它将通过通常的cookie发送认证数据。如果您在活塞中使用“匿名”处理程序,但在返回数据之前手动检查用户是否已登录,那么您实际上使用传统身份验证作为自己的站点。