七牛python sdk保存文件到七牛云存储,无法处理数据中尖括号
高洛峰
高洛峰 2017-04-17 13:26:01
0
1
516

比如下面这样的数据

    <!doctype html>
    <html xmlns:ng="http://angularjs.org">
        <body>
            Hello {{'World'}}!
            <script src="http://code.angularjs.org/angular.js"></script>
            <script>
                angular.element(document).ready(function() {
                angular.bootstrap(document);
                });
            </script>
        </body>
    </html>

我想通过StringIO的方式保存到七牛云存储,得到不同的结果

  • 如果是通过文件上传的,存储过程正常
  • 如果是通过post方式在字段中提交的,存储过程失败,返回的错误信息为limited mimeType: ExpUser can only upload image/audio/video/plaintext, reqid:vxUAAPAePxkbbJQT,但是hard code去掉尖括号,就正常了

实现的代码参考了七牛python sdk的文档

policy = qiniu.rs.PutPolicy(bucket_name)
uptoken = policy.token()

extra = qiniu.io.PutExtra()
extra.mime_type = "text/plain"
extra.params = {'x:a': 'a'}

data = u"""
## 概览
    <!doctype html>
    <html xmlns:ng="http://angularjs.org">
        <body>
            Hello {{'World'}}!
            <script src="http://code.angularjs.org/angular.js"></script>
            <script>
                angular.element(document).ready(function() {
                angular.bootstrap(document);
                });
            </script>
        </body>
    </html>

下面是一些你的代码必须遵守的顺序:

1. 等页面和所有的脚本加载完之后,找到HTML模板的根节点——通常就是文档的根节点。
2. 调用 api/angular.bootstrap将模板编译成可执行的、数据双向绑定的应用程序。

<span class="doc-copyright">**版权声明:** **中文文档[AngularJS中文社区][]** && **英文文档[AngularJS官网][]** && **代码许可[The MIT License][]** && **文档许可[CC BY 3.0][]**</span>"
"""

data = data.strip().encode('utf-8')
data = str(data)

strio = StringIO.StringIO()
strio.write(data)


result, error = qiniu.io.put(uptoken, 'xxx', strio, extra)
print error

不知道怎么解决...请教

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回覆(1)
阿神

報這個錯limited mimeType: ExpUser can only upload image/audio/video/plaintext,表示你是體驗用戶,七牛服務更內容判斷你上傳的欄位並不是plaintext,而是html檔案(體驗用戶是上傳不了html檔案的),導致了上傳失敗,所以建議你通過以下身份認證成為標準用戶,就可以避免遮掩的情況發生了。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!