非常感谢您阅读:
我必须在.py文件中跟踪调用默认控制器中的web2py函数的代码:
从IDLE运行的.py中的代码片段 - 用户名和密码正确导入
payload = {'username': username, 'password': password}
r = requests.get('http://127.0.0.1:8000/webappfiletransfer/default/server_file_list_create.json/x/y/z', params=payload)
在web2py中,我有以下代码
1:接受用户名和密码和
2:将它们与保存在web2py用户名和密码变量中进行比较
myappfilefolder / modules / parameters.py 中包含用户名和密码的文件 parameters.py 在web2py环境中
编辑:似乎在完成系统重启后,还需要在web2py / site-packages中放置parameters.py,正如我在几个SO答案中找到的那样,无论事实如何
一旦模块" mymodule.py"放入app" modules /"文件夹,它可以从web2py应用程序内的任何位置导入(无需更改sys.path):import mymodule
正如文件所述。显然我错过了一些东西
parameters.py是
用户名=" testacc"
密码=" 1234"
Web2py代码是:
from gluon.custom_import import track_changes
track_changes(True)
import parameters
usrname = request.vars['username']
passwd = request.vars['password']
if (usrname==parameters.username and passwd==parameters.password):
问题:虽然我正在使用
from gluon.custom_import import track_changes
track_changes(True)
据我所知,强制重新加载导入的模块,会发生以下行为:
在IDLE的第一次调用中,如果parameters.py中的参数错误,我已经打印了未经授权的消息,因为参数错误。
使用正确的用户名/密码编辑文件 parameters.py ,我有正确的验证和web2py的成功返回。
再次编辑文件parameters.py并输入错误的凭据不会导致 虽然提供了错误的凭据,但是再次出现错误并且web2py会正确返回。无论凭据如何,所有后续调用都会返回成功结果。
我使用
是否遗漏了一些内容 from gluon.custom_import import track_changes
track_changes(True)
或其他我应该考虑的事情,以便在不关闭第一个web2py的情况下再次触发错误的验证。