Python 如何使用用户名和密码的特定变量发送请求后身份验证?
我正在尝试使用Python 如何使用用户名和密码的特定变量发送请求后身份验证?,python,python-2.7,Python,Python 2.7,我正在尝试使用auth和companyId和accountPassword变量发送请求后身份验证,但如果我使用auth方式,则无法进行身份验证 下面的工作,但我不能使用URL中的用户名和密码作为其创建的用户名和密码存储在日志中的安全问题 url = AUTH_URI + '/' + dyn_url + "?appIdKey=" + str.encode(APP_ID_KEY) + "&companyId=" + self._user + "
auth
和companyId
和accountPassword
变量发送请求后身份验证,但如果我使用auth
方式,则无法进行身份验证
下面的工作,但我不能使用URL中的用户名和密码作为其创建的用户名和密码存储在日志中的安全问题
url = AUTH_URI + '/' + dyn_url + "?appIdKey=" + str.encode(APP_ID_KEY) + "&companyId=" + self._user + "&accountPassword=" + self._pswd
r2 = requests.post(url,timeout=DEFAULT_REQUESTS_TIMEOUT,headers={'Content-Type': 'application/json;charset=UTF-8'},allow_redirects=False)
将其更改为使用auth变量无法进行身份验证,有关如何修复此问题的任何指导
url = AUTH_URI + '/' + dyn_url + "?appIdKey=" + str.encode(APP_ID_KEY)
r2 = requests.post(url,timeout=DEFAULT_REQUESTS_TIMEOUT,headers={'Content-Type': 'application/json;charset=UTF-8'},auth=('companyId=self._user','accountPassword=self._pswd'),allow_redirects=False)
我得到了以下错误,不知何故,'companyId=self.\u user','accountPassword=self.\u pswd'
没有生效
错误:-
Please enter the username and password
您正在发送字符串literal
'self.\u user'
作为用户名。如果正在运行Python 3.6或更高版本,请尝试使用:
r2 = requests.post(url,
timeout=DEFAULT_REQUESTS_TIMEOUT,
headers={'Content-Type': 'application/json;charset=UTF-8'},
auth=(f'companyId={self._user}',
f'accountPassword={self._pswd}'),
allow_redirects=False)
编辑:对于Python 2.7,它将是:
r2 = requests.post(url,
timeout=DEFAULT_REQUESTS_TIMEOUT,
headers={'Content-Type': 'application/json;charset=UTF-8'},
auth=('companyId={}'.format(self._user),
'accountPassword={}'.format(self._pswd)),
allow_redirects=False)
我仍然收到
请输入您的公司ID和密码
,我正在用python 2.7执行此操作,只是将f
替换为r
请正确标记您的问题,特别是如果您使用的是使用寿命已结束的python版本。对于Python2,这将是'companyId={}.format(self.\u user)
r”“
完全不相关。实际上,将其解析为r1=requests.post(url1,timeout=1000,allow_redirects=False,data={'companyId':username,'accountPassword':password})
,这将为您形成编码数据并将其用作post正文OK,太好了。我假设您正在尝试使用HTTP基本身份验证。