Skip to content

Commit

Permalink
Merge 7ffc038 into 473bd51
Browse files Browse the repository at this point in the history
  • Loading branch information
hangzws committed Jan 8, 2019
2 parents 473bd51 + 7ffc038 commit 2f760f0
Show file tree
Hide file tree
Showing 8 changed files with 86 additions and 47 deletions.
4 changes: 4 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ python:
- 3.4
- 3.5
install:
- if [[ $TRAVIS_PYTHON_VERSION == '2.6' ]]; then travis_retry pip install aliyun-python-sdk-core==2.8.7;
fi
- if [[ $TRAVIS_PYTHON_VERSION == '3.3' ]]; then travis_retry pip install pycryptodome==3.6.6;
fi
- pip install crcmod requests nose nose-cov python-coveralls pycryptodome aliyun-python-sdk-sts
aliyun-python-sdk-kms
- pip install --upgrade mock
Expand Down
11 changes: 11 additions & 0 deletions README-CN.rst
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,17 @@ Python 2.6,2.7,3.3,3.4,3.5
except oss2.exceptions.NoSuchKey as e:
print('{0} not found: http_status={1}, request_id={2}'.format(key, e.status, e.request_id))
设置日志
---------------
使用下面的代码可以设置oss2的日志级别.

.. code-block:: python
import logging
logging.getLogger('oss2').setLevel(logging.WARNING)
测试
----

Expand Down
9 changes: 9 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,15 @@ The Python SDK interface will throw an exception in case of an error (see oss2.e
except oss2.exceptions.NoSuchKey as e:
print('{0} not found: http_status={1}, request_id={2}'.format(key, e.status, e.request_id))
Setup Logging
---------------

The following code can set the logging level of 'oss2'.
.. code-block:: python
import logging
logging.getLogger('oss2').setLevel(logging.WARNING)
Testing
-------

Expand Down
6 changes: 6 additions & 0 deletions examples/object_basic.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@
# 上传一段字符串。Object名是motto.txt,内容是一段名言。
bucket.put_object('motto.txt', 'Never give up. - Jack Ma')

# 获取Object的metadata
object_meta = bucket.get_object_meta('你的对象名')
print('last modified: ' + object_meta.last_modified)
print('etag: ' + object_meta.etag)
print('size: ' + object_meta.content_length)

# 下载到本地文件
bucket.get_object_to_file('motto.txt', '本地文件名.txt')

Expand Down
3 changes: 0 additions & 3 deletions oss2/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,3 @@ def set_stream_logger(name='oss2', level=logging.DEBUG, format_string=None):
formatter = logging.Formatter(format_string)
fh.setFormatter(formatter)
logger.addHandler(fh)


set_stream_logger('oss2', logging.INFO)
88 changes: 48 additions & 40 deletions oss2/api.py

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions oss2/auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def __init__(self, access_key_id, access_key_secret):
self.id = access_key_id.strip()
self.secret = access_key_secret.strip()

def _sign_rtmp_url(self, url, bucket_name, channel_name, playlist_name, expires, params):
def _sign_rtmp_url(self, url, bucket_name, channel_name, expires, params):
expiration_time = int(time.time()) + expires

canonicalized_resource = "/%s/%s" % (bucket_name, channel_name)
Expand Down Expand Up @@ -171,7 +171,7 @@ def _sign_request(self, req, bucket_name, key):
def _sign_url(self, req, bucket_name, key, expires):
return req.url + '?' + '&'.join(_param_to_quoted_query(k, v) for k, v in req.params.items())

def _sign_rtmp_url(self, url, bucket_name, channel_name, playlist_name, expires, params):
def _sign_rtmp_url(self, url, bucket_name, channel_name, expires, params):
return url + '?' + '&'.join(_param_to_quoted_query(k, v) for k, v in params.items())


Expand Down Expand Up @@ -199,9 +199,9 @@ def _sign_url(self, req, bucket_name, key, expires):
req.params['security-token'] = self.__security_token
return self.__auth._sign_url(req, bucket_name, key, expires)

def _sign_rtmp_url(self, url, bucket_name, channel_name, playlist_name, expires, params):
def _sign_rtmp_url(self, url, bucket_name, channel_name, expires, params):
params['security-token'] = self.__security_token
return self.__auth._sign_rtmp_url(url, bucket_name, channel_name, playlist_name, expires, params)
return self.__auth._sign_rtmp_url(url, bucket_name, channel_name, expires, params)


def _param_to_quoted_query(k, v):
Expand Down
4 changes: 4 additions & 0 deletions tests/test_live_channel.py
Original file line number Diff line number Diff line change
Expand Up @@ -239,6 +239,10 @@ def test_sign_rtmp_url(self):
expires = 3600
signed_url = self.bucket.sign_rtmp_url(channel_name, playlist_name, expires)
self.assertTrue(signed_url.startswith(self._get_publish_url(self.bucket.bucket_name, channel_name)))

# empty playlist name
signed_url = self.bucket.sign_rtmp_url(channel_name, '', expires)
self.assertTrue(signed_url.startswith(self._get_publish_url(self.bucket.bucket_name, channel_name)))

self.bucket.delete_live_channel(channel_name)

Expand Down

0 comments on commit 2f760f0

Please sign in to comment.