10 月 23 - 25 日,QCon 上海站即将召开,现在大会已开始正式报名,可以享受 8 折优惠 了解详情
写点什么

Windows Azure 已经使用 Python 包装

  • 2008-11-16
  • 本文字数:1518 字

    阅读完需:约 5 分钟

微软项目经理 Sriram Krishnan 已经为 Windows Azure 数据存储编写了一个 Python 包装。Python 是 Windows Azure 支持的语言之一。

根据微软的 Azure 网站,Python 是 Windows Azure 所支持的工具和语言之一:

Windows Azure 是一个开放的平台,将同时支持微软和非微软的语言和环境。Windows Azure 欢迎第三方的工具和语言,例如 Eclipse,Ruby,PHP 和Python…… 世界各地有数百万的开发人员使用.NET Framework 和 Visual Studio 开发环境。开发者可以用相同的技能使用 Visual Studio 创建云化的应用程序,直接使用 Visual Studio 编写,测试和部署。在不久的将来开发人员能够部署用 RubyOn Rails 和Python编写的应用程序。

Sriram 已经用 Python 编写了一个 Windows Azure 的数据存储包装并放在 GitHub 的代码库上。下面的例子演示了存储和查询数据:

复制代码
conn = WAStorageConnection(DEVSTORE_HOST, DEVSTORE_ACCOUNT, DEVSTORE_SECRET_KEY) <br></br>    for (container_name,etag, last_modified ) in  conn.list_containers(): <br></br>        print container_name <br></br>        print etag <br></br>        print last_modified <br></br>    conn.create_container("testcontainer", False) <br></br>    conn.put_blob("testcontainer","test","Hello World!" ) <br></br>    print conn.get_blob("testcontainer", "test")

下面的例子演示登录:

复制代码
def _get_auth_header(self, http_method, path, data, headers): <br></br>   # As documented at http://msdn.microsoft.com/en-us/library/dd179428.aspx <br></br>   string_to_sign =""
<p>#First element is the method <br></br>   string_to_sign += http_method + NEW_LINE</p>
<p>   #Second is the optional content MD5 <br></br>   string_to_sign += NEW_LINE</p>
<p>   #content type - this should have been initialized atleast to a blank value <br></br>   if headers.has_key("content-type"): <br></br>    string_to_sign += headers["content-type"] <br></br>   string_to_sign += NEW_LINE</p>
<p>   # date - we don't need to add header here since the special date storage header <br></br>   # always exists in our implementation <br></br>   string_to_sign += NEW_LINE</p>
<p>   # Construct canonicalized storage headers. <br></br>   # TODO: Note that this doesn't implement parts of the spec - <br></br>   # combining header fields with same name, <br></br>   # unfolding long lines and trimming white spaces around the colon <br></br>   ms_headers =[header_key for header_key in headers.keys() <br></br>   if header_key.startswith(PREFIX_STORAGE_HEADER)] <br></br>   ms_headers.sort() <br></br>   for header_key in ms_headers: <br></br>    string_to_sign += "%s:%s%s" % (header_key, headers[header_key], NEW_LINE)</p>
   # Add canonicalized resource <br></br>   string_to_sign += "/" + self.account_name + path <br></br>   utf8_string_to_sign = unicode(string_to_sign).encode("utf-8") <br></br>   hmac_digest = hmac.new(self.secret_key, <br></br>    utf8_string_to_sign, <br></br>    hashlib.sha256).digest() <br></br>   return base64.encodestring(hmac_digest).strip()

微软的 Windows Azure 计划看起来像是要超越 Google 所提供的。Google 的 App Engine 目前只支持 Python,但是 Google 在将来有支持多语言的计划

查看英文原文: Python Has Wrapped Itself Around Windows Azure

2008-11-16 19:521341
用户头像

发布了 45 篇内容, 共 88800 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

过等保流程简单说明-行云管家

行云管家

网络安全 等级保护 过等保 等保2.0

数仓性能调优:如何进行函数下推

华为云开发者联盟

数据库 后端 华为云 函数 企业号十月 PK 榜

华为云GaussDB数据库荣获国际CC EAL4+级别认证

华为云开发者联盟

数据库 华为云 企业号十月 PK 榜

java的IO模型分类和特点

zarmnosaj

10月月更

前端培训出来的容易找工作吗

小谷哥

微服务是开发架构对三高场景的妥协吗?

NoGirlfriendDeFoundException

架构 微服务 单体架构 云平台

vue实战-完全掌握Vue自定义指令

yyds2026

Vue

git branch --set-upstream-to=origin/master

源字节1号

软件开发

进销存软件哪个简单好用?

优秀

进销存管理系统 进销存系统

2022前端培训学习前景怎么样?

小谷哥

Vue 中为什么要有nextTick

华为云开发者联盟

Vue 前端 DOM 华为云 企业号十月 PK 榜

如何实现一个 Go 语言的字符串切片反转函数

宇宙之一粟

数据结构与算法 Go 语言 反转字符串 10月月更

Java开发技术大家推荐哪家培训班

小谷哥

数据结构学习,串篇(链式串)

IC00

学习 数据结构 算法 学习笔记 10月月更

Apache Doris 1.1.3 版本正式发布!|版本通告

SelectDB

数据库 大数据 开源 数据分析 Doris

vue实战中的一些小技巧

yyds2026

Vue

深入浅出理解Java并发AQS的共享锁模式

JAVA旭阳

Java 并发 10月月更

Webpack配置实战

Geek_02d948

webpack

云管平台常见问题汇总解答-行云管家

行云管家

云计算 企业上云 云管理

使用ESLint+Prettier统一Vue3项目代码风格

汪小成

10月月更

区块链链游项目系统开发程序方案(Demo)

I8O28578624

一文读懂TDengine3.0中的事务机制

TDengine

数据库 tdengine 时序数据库

户外led显示屏如何防火

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

2022-10微软漏洞通告

火绒安全

安全漏洞

当心!软件推广瞄准Bing搜索 月访问量已超百万

火绒安全

搜索引擎 推广

Webpack最佳实践

Geek_02d948

webpack

Vue组件入门(七)v-model与自定义事件

Augus

Vue3 10月月更

彻底搞懂Vue虚拟Dom和diff算法

yyds2026

Vue

实践GoF的设计模式:代理模式

华为云开发者联盟

Go 开发 华为云 企业号十月 PK 榜

前端培训学习就业前景怎么样?

小谷哥

前端培训学习后能做多久?

小谷哥

Windows Azure已经使用Python包装_.NET_Abel Avram_InfoQ精选文章