本文整理汇总了Python中pyamf.remoting.encode函数的典型用法代码示例。如果您正苦于以下问题:Python encode函数的具体用法?Python encode怎么用?Python encode使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了encode函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_basic
def test_basic(self):
"""
"""
msg = remoting.Envelope(pyamf.AMF0, pyamf.ClientTypes.Flash6)
self.assertEquals(remoting.encode(msg).getvalue(), "\x00" * 6)
msg = remoting.Envelope(pyamf.AMF3, pyamf.ClientTypes.FlashCom)
self.assertEquals(remoting.encode(msg).getvalue(), "\x03\x01" + "\x00" * 4)
示例2: test_basic
def test_basic(self):
"""
"""
msg = remoting.Envelope(pyamf.AMF0)
self.assertEquals(remoting.encode(msg).getvalue(), '\x00' * 6)
msg = remoting.Envelope(pyamf.AMF3)
self.assertEquals(remoting.encode(msg).getvalue(),
'\x00\x03' + '\x00' * 4)
示例3: test_amf_parse
def test_amf_parse(self):
mq = MethodQueryCanonicalizer('POST', 'application/x-amf', 0, BytesIO())
req = Request(target='t', body="")
ev_1 = Envelope(AMF3)
ev_1['/0'] = req
req = Request(target='t', body="alt_content")
ev_2 = Envelope(AMF3)
ev_2['/0'] = req
assert mq.amf_parse(encode(ev_1).getvalue(), None) != \
mq.amf_parse(encode(ev_2).getvalue(), None)
示例4: write_envelope
def write_envelope(version, filename):
envelope = Envelope(amfVersion=version)
message = Response(records)
envelope.__setitem__('message', message);
stream = remoting.encode(envelope)
file = open(filename, 'w+')
file.write(stream.getvalue())
示例5: get_kanal5
def get_kanal5(video_player):
player_id = 811317479001
publisher_id = 22710239001
const = '9f79dd85c3703b8674de883265d8c9e606360c2e'
env = remoting.Envelope(amfVersion=3)
env.bodies.append(
(
"/1",
remoting.Request(
target="com.brightcove.player.runtime.PlayerMediaFacade.findMediaById",
body=[const, player_id, video_player, publisher_id],
envelope=env
)
)
)
env = str(remoting.encode(env).read())
conn = httplib.HTTPConnection("c.brightcove.com")
conn.request("POST", "/services/messagebroker/amf?playerKey=AQ~~,AAAABUmivxk~,SnCsFJuhbr0vfwrPJJSL03znlhz-e9bk", env, {'content-type': 'application/x-amf'})
response = conn.getresponse().read()
rtmp = ''
for rendition in remoting.decode(response).bodies[0][1].body['renditions']:
rtmp += '"%sx%s:%s";' % (rendition['frameWidth'], rendition['frameHeight'], rendition['defaultURL'])
return rtmp
示例6: test_response
def test_response(self):
"""
Test encoding of request body.
"""
msg = remoting.Envelope(pyamf.AMF0)
msg['/1'] = remoting.Response(body=[1, 2, 3])
self.assertEqual(len(msg), 1)
x = msg['/1']
self.assertTrue(isinstance(x, remoting.Response))
self.assertEqual(x.envelope, msg)
self.assertEqual(x.body, [1, 2, 3])
self.assertEqual(x.status, 0)
self.assertEqual(x.headers, msg.headers)
self.assertEqual(
remoting.encode(msg).getvalue(),
'\x00\x00\x00\x00'
'\x00\x01\x00\x0b/1/onResult\x00\x04null\x00\x00\x00\x00\n\x00\x00'
'\x00\x03\x00?\xf0\x00\x00\x00\x00\x00\x00\[email protected]\x00\x00\x00\x00'
'\x00\x00\x00\[email protected]\x08\x00\x00\x00\x00\x00\x00'
)
示例7: __GetBrightCoveData
def __GetBrightCoveData(self):
""" Retrieves the Url's from a brightcove stream
Arguments:
playerKey : string - Key identifying the current request
contentId : int - ID of the content to retrieve
url : string - Url of the page that calls the video SWF
seed : string - Constant which depends on the website
Keyword Arguments:
experienceId : id - <unknown parameter>
Returns a dictionary with the data
"""
# Seed = 61773bc7479ab4e69a5214f17fd4afd21fe1987a
envelope = self.__BuildBrightCoveAmfRequest(self.playerKey, self.contentId, self.url, self.experienceId, self.seed, self.contentRefId)
if self.proxy:
connection = httplib.HTTPConnection(self.proxy.Proxy, self.proxy.Port)
else:
connection = httplib.HTTPConnection("c.brightcove.com")
print envelope
jj = remoting.encode(envelope).read()
connection.request("POST", "http://c.brightcove.com/services/messagebroker/amf?playerKey=" + str(self.playerKey), str(remoting.encode(envelope).read()), {'content-type': 'application/x-amf'})
response = connection.getresponse().read()
#print response
response = remoting.decode(response).bodies[0][1].body
print response
if self.logger:
self.logger.Trace(response)
self.full_response = response
return response['programmedContent']['videoPlayer']['mediaDTO']
示例8: test_process_request
def test_process_request(self):
def echo(data):
return data
self.gw.addService(echo)
env = remoting.Envelope(pyamf.AMF3)
request = remoting.Request('echo', body=['hello'])
env['/1'] = request
d = client.getPage("http://127.0.0.1:%d/" % (self.port,),
method="POST", postdata=remoting.encode(env).getvalue())
def cb(result):
response = remoting.decode(result)
self.assertEquals(response.amfVersion, pyamf.AMF3)
self.assertTrue('/1' in response)
body_response = response['/1']
self.assertEquals(body_response.status, remoting.STATUS_OK)
self.assertEquals(body_response.body, 'hello')
return d.addCallback(cb)
示例9: get_clip_info
def get_clip_info(const, playerID, videoPlayer, publisherID):
conn = httplib.HTTPConnection("c.brightcove.com")
envelope = build_amf_request(const, playerID, videoPlayer, publisherID)
conn.request("POST", "/services/messagebroker/amf?playerKey=" + playerKey, str(remoting.encode(envelope).read()), {'content-type': 'application/x-amf'})
response = conn.getresponse().read()
response = remoting.decode(response).bodies[0][1].body
return response
示例10: test_deferred_service
def test_deferred_service(self):
def echo(data):
x = defer.Deferred()
reactor.callLater(0, x.callback, data)
return x
self.gw.addService(echo)
env = remoting.Envelope(pyamf.AMF0, pyamf.ClientTypes.Flash9)
request = remoting.Request('echo', body=['hello'])
env['/1'] = request
d = client.getPage("http://127.0.0.1:%d/" % (self.port,),
method="POST", postdata=remoting.encode(env).getvalue())
def cb(result):
response = remoting.decode(result)
self.assertEquals(response.amfVersion, pyamf.AMF0)
self.assertEquals(response.clientType, pyamf.ClientTypes.Flash9)
self.assertTrue('/1' in response)
body_response = response['/1']
self.assertEquals(body_response.status, remoting.STATUS_OK)
self.assertEquals(body_response.body, 'hello')
return d.addCallback(cb)
示例11: test_timezone
def test_timezone(self):
import datetime
self.executed = False
td = datetime.timedelta(hours=-5)
now = datetime.datetime.utcnow()
def echo(d):
self.assertEquals(d, now + td)
self.executed = True
return d
self.gw.addService(echo)
self.gw.timezone_offset = -18000
msg = remoting.Envelope(amfVersion=pyamf.AMF0)
msg['/1'] = remoting.Request(target='echo', body=[now])
stream = remoting.encode(msg)
self.environ['wsgi.input'] = stream
self.gw.post()
envelope = remoting.decode(self.response.out.getvalue())
message = envelope['/1']
self.assertEquals(message.body, now)
self.assertTrue(self.executed)
示例12: get_clip_info
def get_clip_info(clip_name):
conn = httplib.HTTPConnection("www.tele5.de")
envelope = build_amf_request(clip_name)
conn.request("POST", "/gateway/gateway.php", str(remoting.encode(envelope).read()), {'content-type': 'application/x-amf'})
response = conn.getresponse().read()
response = remoting.decode(response).bodies[0][1].body
return response
示例13: test_process_request
def test_process_request(self):
def echo(data):
return data
self.gw.addService(echo)
env = remoting.Envelope(pyamf.AMF0, pyamf.ClientTypes.Flash9)
request = remoting.Request("echo", body=["hello"])
env["/1"] = request
d = client.getPage(
"http://127.0.0.1:%d/" % (self.port,), method="POST", postdata=remoting.encode(env).getvalue()
)
def cb(result):
response = remoting.decode(result)
self.assertEquals(response.amfVersion, pyamf.AMF0)
self.assertEquals(response.clientType, pyamf.ClientTypes.Flash9)
self.assertTrue("/1" in response)
body_response = response["/1"]
self.assertEquals(body_response.status, remoting.STATUS_OK)
self.assertEquals(body_response.body, "hello")
return d.addCallback(cb)
示例14: test_timezone
def test_timezone(self):
import datetime
self.executed = False
td = datetime.timedelta(hours=-5)
now = datetime.datetime.utcnow()
def echo(d):
self.assertEquals(d, now + td)
self.executed = True
return d
self.gw.addService(echo)
self.gw.timezone_offset = -18000
msg = remoting.Envelope(amfVersion=pyamf.AMF0, clientType=0)
msg["/1"] = remoting.Request(target="echo", body=[now])
stream = remoting.encode(msg)
d = client.getPage("http://127.0.0.1:%d/" % (self.port,), method="POST", postdata=stream.getvalue())
def cb(response):
envelope = remoting.decode("".join(response))
message = envelope["/1"]
self.assertEquals(message.status, remoting.STATUS_OK)
self.assertEquals(message.body, now)
return d.addCallback(cb)
示例15: test_expose_request
def test_expose_request(self):
self.gw.expose_request = True
self.executed = False
env = remoting.Envelope(pyamf.AMF0, pyamf.ClientTypes.Flash9)
request = remoting.Request("echo", body=["hello"])
env["/1"] = request
def echo(http_request, data):
self.assertTrue(isinstance(http_request, http.Request))
self.assertTrue(hasattr(http_request, "amf_request"))
amf_request = http_request.amf_request
self.assertEquals(request.target, "echo")
self.assertEquals(request.body, ["hello"])
self.executed = True
return data
self.gw.addService(echo)
d = client.getPage(
"http://127.0.0.1:%d/" % (self.port,), method="POST", postdata=remoting.encode(env).getvalue()
)
return d.addCallback(lambda x: self.assertTrue(self.executed))