如何从Mac应用程序向Django服务器发送HTTP请求?

时间:2012-04-16 11:49:13

标签: python django http

我想发送一个HTTP请求,如:

"http://.../mydjangosite?var1=value1&var2=value2&var3=value3"

到我的Django服务器,如果"1"等于我的数据库中的value1,2,3,则希望最后发送一个布尔值为"0"的响应,如果不等,则为class Version(models.Model): name = models.CharField(max_length = 200) description = models.TextField() id_version = models.IntegerField() date_version = models.DateTimeField('Version published') def was_published_today(self): return self.date_version.date() == datetime.date.today() def get_number_version(self): return "%d" % (self.id_version) def save(self): top = Version.objects.order_by('-id_version')[0] self.id_version = top.id_version + 1 super(Version, self).save()

这是我第一次使用Django开发,所以如果有人有提示给我,我将不胜感激。

抱歉英语不好,如果有人不明白我的问题,请随时告诉我。

亲切的问候。

编辑:

首先感谢您的快速回答!

你说得对,我太通用了,我会更加谨慎地解释。我正在开发一个我们有一些mac应用程序的项目。我们希望创建一个“平台”,这些应用程序的客户端可以获得这些持续时间的最新版本。目的是首先创建一个django服务器,我们存储有关软件版本的信息.etc。然后,当软件的用户执行它时,它会自动向服务器发送一个http请求,以“检查”是否存在新版本。如果是,我们邀请他下载新版本,如果没有,则继续。

从现在起,我一直在研究django服务器,我从django网站上的教程开始。我创建了models.py示例:

urlpatterns = patterns('',
# Examples:

# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls)),
url(r'^versionsupdate/version/$','versionsupdate.views.version'),

我更改了urls.py:

{{1}}

所以,我想要的是,从一个mac应用程序,发送一个http请求到服务器django像“http://.../versionsupdate/version?version = 1 ...”然后,在我的服务器捕获请求,在“=”之后获取值,将其与“id_version”的值进行比较,并使用布尔值返回响应,具体取决于它是否等于。

我希望这很清楚我不确定^^并且请告诉我,如果我从现在开始做的是好还是不好,我是django / python的新手,所以我注意肯定会朝着好的方向发展

再次感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

首先。从Django端,您需要特定的数据类型响应(render_to_response标头)。例如,它可以是json。

二。从客户端的python脚本,您可以使用urllib或urllib2获取URL。

import urllib
import urllib2

url = 'http://www.acme.com/users/details'
params = urllib.urlencode({
  'firstName': 'John',
  'lastName': 'Doe'
})
response = urllib2.urlopen(url, params).read()

然后只是分析回应。

相关问题