本文整理汇总了Python中twilio.util.RequestValidator.compute_signature方法的典型用法代码示例。如果您正苦于以下问题:Python RequestValidator.compute_signature方法的具体用法?Python RequestValidator.compute_signature怎么用?Python RequestValidator.compute_signature使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类twilio.util.RequestValidator
的用法示例。
在下文中一共展示了RequestValidator.compute_signature方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TwiMLTest
# 需要导入模块: from twilio.util import RequestValidator [as 别名]
# 或者: from twilio.util.RequestValidator import compute_signature [as 别名]
class TwiMLTest(unittest.TestCase):
def setUp(self):
self.app = app.test_client()
self.validator = RequestValidator(app.config['TWILIO_AUTH_TOKEN'])
def assertTwiML(self, response):
self.assertTrue("<Response>" in response.data, "Did not find " \
"<Response>: %s" % response.data)
self.assertTrue("</Response>" in response.data, "Did not find " \
"</Response>: %s" % response.data)
self.assertEqual("200 OK", response.status)
def sms(self, body, url='/sms', to=app.config['TWILIO_CALLER_ID'],
from_='+15558675309', extra_params=None, signed=True):
params = {
'SmsSid': 'SMtesting',
'AccountSid': app.config['TWILIO_ACCOUNT_SID'],
'To': to,
'From': from_,
'Body': body,
'FromCity': 'BROOKLYN',
'FromState': 'NY',
'FromCountry': 'US',
'FromZip': '55555'}
if extra_params:
params = dict(params.items() + extra_params.items())
if signed:
abs_url = 'http://{0}{1}'.format(app.config['SERVER_NAME'], url)
signature = self.validator.compute_signature(abs_url, params)
return self.app.post(url, data=params,
headers={'X-Twilio-Signature': signature})
return self.app.post(url, data=params)
def call(self, url='/voice', to=app.config['TWILIO_CALLER_ID'],
from_='+15558675309', digits=None, extra_params=None, signed=True):
params = {
'CallSid': 'CAtesting',
'AccountSid': app.config['TWILIO_ACCOUNT_SID'],
'To': to,
'From': from_,
'CallStatus': 'ringing',
'Direction': 'inbound',
'FromCity': 'BROOKLYN',
'FromState': 'NY',
'FromCountry': 'US',
'FromZip': '55555'}
if digits:
params['Digits'] = digits
if extra_params:
params = dict(params.items() + extra_params.items())
if signed:
abs_url = 'http://{0}{1}'.format(app.config['SERVER_NAME'], url)
signature = self.validator.compute_signature(abs_url, params)
return self.app.post(url, data=params,
headers={'X-Twilio-Signature': signature})
return self.app.post(url, data=params)
示例2: send
# 需要导入模块: from twilio.util import RequestValidator [as 别名]
# 或者: from twilio.util.RequestValidator import compute_signature [as 别名]
def send(self, method, url, authtoken):
validator = RequestValidator(authtoken)
params = urllib.urlencode(self.url_params)
if method == "GET":
url = "{0}?{1}".format(url, params)
sig = validator.compute_signature(url, {})
req = urllib2.Request(url)
elif method == "POST":
sig = validator.compute_signature(url, self.url_params)
req = urllib2.Request(url, params)
else:
raise CwurlioUserException("Invalid method: %s" % method)
req.add_header("X-Twilio-Signature", sig)
return urllib2.urlopen(req).read()
示例3: test_international_sms
# 需要导入模块: from twilio.util import RequestValidator [as 别名]
# 或者: from twilio.util.RequestValidator import compute_signature [as 别名]
def test_international_sms(self):
token = os.environ["TWILIO_AUTH_TOKEN"]
validator = RequestValidator(token)
uri = "http://www.postbin.org/1c2pdoc"
params = {
"AccountSid": "AC4bf2dafb92341f7caf8650403e422d23",
"ApiVersion": "2010-04-01",
"Body": "Chloéñ",
"From": "+15305451766",
"FromCity": "SOUTH LAKE TAHOE",
"FromCountry": "US",
"FromState": "CA",
"FromZip": "89449",
"SmsMessageSid": "SM51d6d055f53f1072543872c601aae89b",
"SmsStatus": "SM51d6d055f53f1072543872c601aae89b",
"SmsStatus": "received",
"To": "+15304194304",
"ToCity": "WOODLAND",
"ToCountry": "US",
"ToState": "CA",
"ToZip": "95695",
}
expected = "UHkWu+6WLOzPunzb8PuCGPeW1Uw="
self.assertEquals(validator.compute_signature(uri, params), expected)
self.assertTrue(validator.validate(uri, params, expected))
示例4: test_good_signature_GET
# 需要导入模块: from twilio.util import RequestValidator [as 别名]
# 或者: from twilio.util.RequestValidator import compute_signature [as 别名]
def test_good_signature_GET(self):
'good signature is allowed on GET'
with self.settings(TWILIO_AUTH_TOKEN='fred'):
req = self.factory.get('/', data={'a': 'b'})
validator = RequestValidator(settings.TWILIO_AUTH_TOKEN)
req.META['HTTP_X_TWILIO_SIGNATURE'] = validator.compute_signature(
req.build_absolute_uri(), req.POST
)
self.view.request = req
try:
self.view.verify_request()
except PermissionDenied:
self.fail('Raised PermissionDenied when not expecting it')
示例5: test_validation
# 需要导入模块: from twilio.util import RequestValidator [as 别名]
# 或者: from twilio.util.RequestValidator import compute_signature [as 别名]
def test_validation(self):
token = "1c892n40nd03kdnc0112slzkl3091j20"
validator = RequestValidator(token)
uri = "http://www.postbin.org/1ed898x"
params = {
"AccountSid": "AC9a9f9392lad99kla0sklakjs90j092j3",
"ApiVersion": "2010-04-01",
"CallSid": "CAd800bb12c0426a7ea4230e492fef2a4f",
"CallStatus": "ringing",
"Called": "+15306384866",
"CalledCity": "OAKLAND",
"CalledCountry": "US",
"CalledState": "CA",
"CalledZip": "94612",
"Caller": "+15306666666",
"CallerCity": "SOUTH LAKE TAHOE",
"CallerCountry": "US",
"CallerName": "CA Wireless Call",
"CallerState": "CA",
"CallerZip": "89449",
"Direction": "inbound",
"From": "+15306666666",
"FromCity": "SOUTH LAKE TAHOE",
"FromCountry": "US",
"FromState": "CA",
"FromZip": "89449",
"To": "+15306384866",
"ToCity": "OAKLAND",
"ToCountry": "US",
"ToState": "CA",
"ToZip": "94612",
}
expected = "fF+xx6dTinOaCdZ0aIeNkHr/ZAA="
self.assertEquals(validator.compute_signature(uri, params), expected)
self.assertTrue(validator.validate(uri, params, expected))