本文整理汇总了Python中pycurl.POSTFIELDS属性的典型用法代码示例。如果您正苦于以下问题:Python pycurl.POSTFIELDS属性的具体用法?Python pycurl.POSTFIELDS怎么用?Python pycurl.POSTFIELDS使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类pycurl
的用法示例。
在下文中一共展示了pycurl.POSTFIELDS属性的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: url_post
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def url_post( url, # GET URL
params={}, # GET parameters
data=None, # Data to post
content_type=None, # Content type
bind=None, # Bind request to specified address
json=True, # Interpret result as JSON
throw=True, # Throw if status isn't 200
timeout=None, # Seconds before giving up
allow_redirects=True, #Allows URL to be redirected
headers={}, # Hash of HTTP headers
verify_keys=verify_keys_default # Verify SSL keys
):
"""
Post to a URL, returning whatever came back.
"""
content_type, data = __content_type_data(content_type, headers, data)
headers["Content-Type"] = content_type
curl = PycURLRunner(url, params, bind, timeout, allow_redirects, headers, verify_keys)
curl.curl.setopt(pycurl.POSTFIELDS, data)
return curl(json, throw)
示例2: url_put
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def url_put( url, # GET URL
params={}, # GET parameters
data=None, # Data for body
content_type=None, # Content type
bind=None, # Bind request to specified address
json=True, # Interpret result as JSON
throw=True, # Throw if status isn't 200
timeout=None, # Seconds before giving up
allow_redirects=True, #Allows URL to be redirected
headers={}, # Hash of HTTP headers
verify_keys=verify_keys_default # Verify SSL keys
):
"""
PUT to a URL, returning whatever came back.
"""
content_type, data = __content_type_data(content_type, headers, data)
headers["Content-Type"] = content_type
curl = PycURLRunner(url, params, bind, timeout, allow_redirects, headers, verify_keys)
curl.curl.setopt(pycurl.CUSTOMREQUEST, "PUT")
curl.curl.setopt(pycurl.POSTFIELDS, data)
return curl(json, throw)
示例3: get_URLencoded_poster
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def get_URLencoded_poster(self):
"""Initialze a Curl object for a single POST request.
Returns a tuple of initialized Curl and HTTPResponse objects.
"""
data = urlparse.urlencode(self._data, True)
c = pycurl.Curl()
resp = HTTPResponse(self._encoding)
c.setopt(c.URL, str(self._url))
c.setopt(pycurl.POST, 1)
c.setopt(pycurl.POSTFIELDS, data)
c.setopt(c.WRITEFUNCTION, resp._body_callback)
c.setopt(c.HEADERFUNCTION, resp._header_callback)
headers = self._headers[:]
headers.append(httputils.ContentType("application/x-www-form-urlencoded"))
headers.append(httputils.ContentLength(str(len(data))))
c.setopt(c.HTTPHEADER, map(str, headers))
self._set_common(c)
return c, resp
示例4: perform_fp
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def perform_fp(fp, method, url, header='', body=''):
#logger.debug('perform: %s' % url)
fp.setopt(pycurl.URL, url)
if method == 'GET':
fp.setopt(pycurl.HTTPGET, 1)
elif method == 'POST':
fp.setopt(pycurl.POST, 1)
fp.setopt(pycurl.POSTFIELDS, body)
elif method == 'HEAD':
fp.setopt(pycurl.NOBODY, 1)
else:
fp.setopt(pycurl.CUSTOMREQUEST, method)
headers = [h.strip('\r') for h in header.split('\n') if h]
fp.setopt(pycurl.HTTPHEADER, headers)
fp.perform()
示例5: setup_curl_for_post
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def setup_curl_for_post(c, p, data_buf, headers=None, share=None):
setup_curl_basic(c, p, data_buf, headers, share)
httpheader = p.get('httpheader', ['Accept: application/json', "Content-type: application/json"])
if httpheader:
# c.setopt(pycurl.HEADER, p.get('header', 1))
c.setopt(pycurl.HTTPHEADER, httpheader)
post301 = getattr(pycurl, 'POST301', None)
if post301 is not None:
# Added in libcurl 7.17.1.
c.setopt(post301, True)
c.setopt(pycurl.POST, 1)
postfields = p.get('postfields')
if postfields:
postfields = json.dumps(postfields, indent=2, ensure_ascii=False)
c.setopt(pycurl.POSTFIELDS, postfields)
return c
示例6: send_REST_request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def send_REST_request(ip, port, payload):
try:
response = StringIO()
headers = ["Content-Type:application/json"]
url = "http://%s:%s/server/restart" %(
ip, port)
conn = pycurl.Curl()
conn.setopt(pycurl.URL, url)
conn.setopt(pycurl.HTTPHEADER, headers)
conn.setopt(pycurl.POST, 1)
conn.setopt(pycurl.POSTFIELDS, '%s'%json.dumps(payload))
conn.setopt(pycurl.WRITEFUNCTION, response.write)
conn.perform()
return response.getvalue()
except:
return None
# end def send_REST_request
示例7: send_REST_request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def send_REST_request(ip, port, payload):
try:
response = StringIO()
headers = ["Content-Type:application/json"]
url = "http://%s:%s/server/reimage" %(
ip, port)
conn = pycurl.Curl()
conn.setopt(pycurl.URL, url)
conn.setopt(pycurl.HTTPHEADER, headers)
conn.setopt(pycurl.POST, 1)
conn.setopt(pycurl.POSTFIELDS, '%s'%json.dumps(payload))
conn.setopt(pycurl.WRITEFUNCTION, response.write)
conn.perform()
return response.getvalue()
except:
return None
示例8: send_REST_request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def send_REST_request(ip, port, payload):
try:
response = StringIO()
headers = ["Content-Type:application/json"]
url = "http://%s:%s/server/provision" %(
ip, port)
conn = pycurl.Curl()
conn.setopt(pycurl.URL, url)
conn.setopt(pycurl.HTTPHEADER, headers)
conn.setopt(pycurl.POST, 1)
conn.setopt(pycurl.POSTFIELDS, '%s'%json.dumps(payload))
conn.setopt(pycurl.WRITEFUNCTION, response.write)
conn.perform()
return response.getvalue()
except:
return None
示例9: send_REST_request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def send_REST_request(ip, port, object, payload):
try:
response = StringIO()
headers = ["Content-Type:application/json"]
url = "http://%s:%s/%s" %(
ip, port, object)
conn = pycurl.Curl()
conn.setopt(pycurl.URL, url)
conn.setopt(pycurl.HTTPHEADER, headers)
conn.setopt(pycurl.POST, 1)
conn.setopt(pycurl.POSTFIELDS, '%s'%json.dumps(payload))
conn.setopt(pycurl.CUSTOMREQUEST, "PUT")
conn.setopt(pycurl.WRITEFUNCTION, response.write)
conn.perform()
return response.getvalue()
except:
return None
示例10: request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def request(self, method, url, body=None):
def makeRequest(ignored):
curl = CurlRequestDriver.curl
curl.reset()
curl.setopt(pycurl.URL, url)
curl.setopt(pycurl.HEADERFUNCTION, self.receiveHeaders)
curl.setopt(pycurl.WRITEFUNCTION, self.buffer.write)
curl.setopt(pycurl.CUSTOMREQUEST, method)
if body is not None:
curl.setopt(pycurl.POSTFIELDS, body)
headers = []
for key, value in six.iteritems(self.headers):
headers.append("{}: {}".format(key, value))
curl.setopt(pycurl.HTTPHEADER, headers)
d = threads.deferToThread(curl.perform)
d.addCallback(self.receive)
return d
def releaseLock(result):
CurlRequestDriver.lock.release()
# Forward the result to the next handler.
return result
d = CurlRequestDriver.lock.acquire()
# Make the request once we acquire the semaphore.
d.addCallback(makeRequest)
# Release the semaphore regardless of how the request goes.
d.addBoth(releaseLock)
return d
示例11: request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def request(self, endpoint, headers=None, post=None, first=True):
buffer = BytesIO()
ch = pycurl.Curl()
ch.setopt(pycurl.URL, endpoint)
ch.setopt(pycurl.USERAGENT, self.userAgent)
ch.setopt(pycurl.WRITEFUNCTION, buffer.write)
ch.setopt(pycurl.FOLLOWLOCATION, True)
ch.setopt(pycurl.HEADER, True)
if headers:
ch.setopt(pycurl.HTTPHEADER, headers)
ch.setopt(pycurl.VERBOSE, self.debug)
ch.setopt(pycurl.SSL_VERIFYPEER, False)
ch.setopt(pycurl.SSL_VERIFYHOST, False)
ch.setopt(pycurl.COOKIEFILE, self.settingsPath + self.username + '-cookies.dat')
ch.setopt(pycurl.COOKIEJAR, self.settingsPath + self.username + '-cookies.dat')
if post:
import urllib
ch.setopt(pycurl.POST, len(post))
ch.setopt(pycurl.POSTFIELDS, urllib.urlencode(post))
ch.perform()
resp = buffer.getvalue()
header_len = ch.getinfo(pycurl.HEADER_SIZE)
header = resp[0: header_len]
body = resp[header_len:]
ch.close()
if self.debug:
import urllib
print("REQUEST: " + endpoint)
if post is not None:
if not isinstance(post, list):
print('DATA: ' + urllib.unquote_plus(json.dumps(post)))
print("RESPONSE: " + body + "\n")
return [header, json_decode(body)]
示例12: request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def request(self, endpoint, post=None):
buffer = BytesIO()
ch = pycurl.Curl()
ch.setopt(pycurl.URL, Constants.API_URL + endpoint)
ch.setopt(pycurl.USERAGENT, self.userAgent)
ch.setopt(pycurl.WRITEFUNCTION, buffer.write)
ch.setopt(pycurl.FOLLOWLOCATION, True)
ch.setopt(pycurl.HEADER, True)
ch.setopt(pycurl.VERBOSE, False)
ch.setopt(pycurl.COOKIEFILE, os.path.join(self.IGDataPath, self.username, self.username + "-cookies.dat"))
ch.setopt(pycurl.COOKIEJAR, os.path.join(self.IGDataPath, self.username, self.username + "-cookies.dat"))
if post is not None:
ch.setopt(pycurl.POST, True)
ch.setopt(pycurl.POSTFIELDS, post)
if self.proxy:
ch.setopt(pycurl.PROXY, self.proxyHost)
if self.proxyAuth:
ch.setopt(pycurl.PROXYUSERPWD, self.proxyAuth)
ch.perform()
resp = buffer.getvalue()
header_len = ch.getinfo(pycurl.HEADER_SIZE)
header = resp[0: header_len]
body = resp[header_len:]
ch.close()
if self.debug:
print("REQUEST: " + endpoint)
if post is not None:
if not isinstance(post, list):
print("DATA: " + str(post))
print("RESPONSE: " + body)
return [header, json_decode(body)]
示例13: request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def request(self, method, url, headers, post_data=None):
s = util.StringIO.StringIO()
curl = pycurl.Curl()
if method == 'get':
curl.setopt(pycurl.HTTPGET, 1)
elif method == 'post':
curl.setopt(pycurl.POST, 1)
curl.setopt(pycurl.POSTFIELDS, post_data)
else:
curl.setopt(pycurl.CUSTOMREQUEST, method.upper())
# pycurl doesn't like unicode URLs
curl.setopt(pycurl.URL, util.utf8(url))
curl.setopt(pycurl.WRITEFUNCTION, s.write)
curl.setopt(pycurl.NOSIGNAL, 1)
curl.setopt(pycurl.CONNECTTIMEOUT, 30)
curl.setopt(pycurl.TIMEOUT, 80)
curl.setopt(pycurl.HTTPHEADER, ['%s: %s' % (k, v)
for k, v in headers.iteritems()])
if self._verify_ssl_certs:
curl.setopt(pycurl.CAINFO, os.path.join(
os.path.dirname(__file__), 'data/ca-certificates.crt'))
else:
curl.setopt(pycurl.SSL_VERIFYHOST, False)
try:
curl.perform()
except pycurl.error, e:
self._handle_request_error(e)
示例14: send_REST_request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def send_REST_request(self, ip, port, endpoint, payload,
method='POST', urlencode=False):
try:
response = StringIO()
headers = ["Content-Type:application/json"]
url = "http://%s:%s/%s" %(ip, port, endpoint)
conn = pycurl.Curl()
if method == "PUT":
conn.setopt(pycurl.CUSTOMREQUEST, method)
if urlencode == False:
first = True
for k,v in payload.iteritems():
if first:
url = url + '?'
first = False
else:
url = url + '&'
url = url + ("%s=%s" % (k,v))
else:
url = url + '?' + payload
if self.logger:
self.logger.log(self.logger.INFO,
"Sending post request to %s" % url)
conn.setopt(pycurl.URL, url)
conn.setopt(pycurl.HTTPHEADER, headers)
conn.setopt(pycurl.POST, 1)
if urlencode == False:
conn.setopt(pycurl.POSTFIELDS, '%s'%json.dumps(payload))
conn.setopt(pycurl.WRITEFUNCTION, response.write)
conn.perform()
return response.getvalue()
except:
return None
示例15: send_REST_request
# 需要导入模块: import pycurl [as 别名]
# 或者: from pycurl import POSTFIELDS [as 别名]
def send_REST_request(ip, port, action, payload):
try:
url = "http://%s:%s/dhcp_event?action=%s" % (ip, port, action)
headers = ["Content-Type:application/json"]
conn = pycurl.Curl()
conn.setopt(pycurl.TIMEOUT, 1)
conn.setopt(pycurl.URL, url)
conn.setopt(pycurl.HTTPHEADER, headers)
conn.setopt(pycurl.POST, 1)
conn.setopt(pycurl.POSTFIELDS, payload)
conn.perform()
except:
return