在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请求并反序列化输出所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)