2017-08-15 159 views
0

我正在尝试编写一个python脚本来将数据发布到连接到restful web服务的Microsoft SQL Server数据库。但是,我收到了一个我不明白的,以前从未遇到的错误。Python将数据发布到Web服务

Python代码发布数据:

import json 
import requests 
import pprint 
url = 'http://192.168.1.111/api/Data' 
data = {'ID': '1', "ChannelID': '34','TimeStampID': '45'} 
data_json = json.dumps(data) 
headers = {'Content-type': 'application/json'} 
response = requests.post(url, data=data_json, headers=headers) 
pprint.pprint(response.json()) 

我下面得到的错误是这样的: enter image description here

我还删除了使用JSON的名称的任何文件,以防止错误的进口。上述错误是什么意思?我试图从以下链接查找什么是kwargs,但不明白。

Understanding kwargs in Python

*args and **kwargs?

希望得到任何帮助。

+0

url中的引号已打开。 –

+0

您能否检查您的服务是否已启动? 另外,请检查请求是否到达您的服务器。 在这里使用args,kwargs是正确的。无需担心这一点。 api服务器似乎是我的问题。 –

+0

对URL进行更正。因此,在这种情况下,我可以假设以下可能是问题的原因: 1)URL问题 2)服务未启动 @DhruvAggarwal – gram95

回答

0

我不知道的错误,但是对于**指定参数和** kwargs:

** ARGS意味着你需要

** kwargs你可以添加尽可能多的参数是指Python中的关键字,不能用作变量名称的关键字。请参阅:

>>> import keyword 
>>> print(keyword.kwlist) 
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 
'del','elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 
'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 
'with', 'yield']