使用Django发出HTTP请求并反序列化输出

使用Django发出HTTP请求并反序列化输出,第1张

概述所以我对整个Web开发几乎全新,但是已经被投入到使用Django从Web服务中提取和解析数据的侧面项目中,并且正在努力理解事情是如何工作的,即使在查看Django时也是如此.文档. 在Django中,我已经完成了所有设置并在基本级别工作(使用模板,显示的页面显示“Hello World”). 现在,为了从webservice中提取数据,我需要向以下格式的URL发出请求: http://wbsapi 所以我对整个Web开发几乎全新,但是已经被投入到使用Django从Web服务中提取和解析数据的侧面项目中,并且正在努力理解事情是如何工作的,即使在查看Django时也是如此.文档.

在Django中,我已经完成了所有设置并在基本级别工作(使用模板,显示的页面显示“Hello World”).

现在,为了从webservice中提取数据,我需要向以下格式的URL发出请求:

http://wbsAPI.withings.net/[service_name]?action=[action_name]&[parameters]

在提供的PHP示例中,他们使用cURL,然后使用Json_decode执行此 *** 作.

我如何才能从Django中获得类似的功能?提前致谢!

解决方法 您将使用urllib2和Json标准模块(或者,优秀的库 requests和Json):
import urllib2import Jsonurl = 'http://wbsAPI.withings.net/[service_name]?action=[action_name]&[parameters]'serialized_data = urllib2.urlopen(url).read()data = Json.loads(serialized_data)

如果你想在一个页面上,你需要它在view,你需要associate with an url.

你的urls.py将包含类似的内容

from django.conf.urls import patterns,url,includeurlpatterns = patterns('',(r'^get_data/$','myapp.vIEws.get_data'),)

你的myapp / vIEws.py将包含类似的内容

from django.http import httpResponseimport urllib2import Jsondef get_data(request):    url = 'http://wbsAPI.withings.net/[service_name]?action=[action_name]&[parameters]'    serialized_data = urllib2.urlopen(url).read()    data = Json.loads(serialized_data)    HTML = "<HTML><body><pre>Data: %s.</pre></body></HTML>" % Json.dumps(data,indent=2)    return httpResponse(HTML)

当然,我不知道你希望如何显示你的数据,所以我再次序列化了:)

总结

以上是内存溢出为你收集整理的使用Django发出HTTP请求并反序列化输出全部内容,希望文章能够帮你解决使用Django发出HTTP请求并反序列化输出所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1206568.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存