举个例子
我的关键字是这样定义的
def get_request(self, uri, headers=None):
"""
处理get请求
:param uri: 服务的uri
:return: 返回结果为json,格式 {"status_code: xxx, "data": xxx}
"""
那么在调用的时候:
&{header}= Create Dictionary Authorization=abc:123
${ret}= REST.Get Request /v1/payment/user/subscriptions/${cardId} ${header}
或者
&{header}= Create Dictionary Authorization=abc:123
${ret}= REST.Get Request /v1/payment/user/subscriptions/${cardId} headers=&{header}
这2中方式都可以。
但是下面的方式不可以:
&{header}= Create Dictionary Authorization=abc:123
${ret}= REST.Get Request /v1/payment/user/subscriptions/${cardId} &{header}
会报TypeError: get_request() got an unexpected keyword argument 'Authorization'。 根据字面意思,我怀疑,robot 将这个字典给解析出来了,然后形成了如下的调用
${ret}= REST.Get Request /v1/payment/user/subscriptions/${cardId} Authorization=abc:123
但是我们定义Get Request时,并没有定义一个叫Authorization的命名参数,所以报错了。
本文介绍了使用Robot框架发送REST GET请求的方法,并通过具体示例解释了如何正确传递头部信息。文章强调了在调用自定义关键字时,字典参数的正确格式对于避免TypeError的重要性。
6万+

被折叠的 条评论
为什么被折叠?



