我正在使用Robot framework中this github link提供的请求库。文档表明if可以通过执行CreateSession <url> headers={'header1':'value1'} ....
但是,当我这样做时,我得到一个错误“value error:需要超过1个值来解包”
这行得通
CreateSession SendCustomHeader http://myhost.com verify=False
这不是
CreateSession SendCustomHeader http://myhost.com headers={'header1':'value1'} verify=False
我尝试了头的各种组合,如'header1'或{'header1':'value1'}或'header1':'value1',但出现了相同的错误
请求库代码RequestsKeywords.py中似乎没有错误
" self.builtin.log('Creating session: %s' % alias, 'DEBUG')
s = session = requests.Session()
s.headers.update(headers)
"
我不确定错误从何而来,因此无法修复
如有任何故障排除提示,敬请垂询
最佳答案
你传递的不是字典,而是一个看起来像字典的字符串。解决方法是创建一个合适的字典并将其传入。为此,Robot有一个Create Dictionary关键字。
*** Settings ***
| Library | Collections
*** Test Cases ***
| Example
| | ${headers}= | Create dictionary
| | ... | header1 | value1
| | ... | header2 | value2
| | CreateSession | SendCustomHeader | http://myhost.com
| | ... | header=${headers} | verify=False
关于python - 如何在机器人框架HTTP请求库中为CreateSession添加 header ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30075809/