0

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

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

到我的 Django 服务器,并希望最后一个发送带有布尔值的响应,"1"如果value1,2,3等于我的数据库中的值,"0"如果不是。

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

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

亲切的问候。

编辑 :

首先感谢您的快速回答!!

你说得对,我太笼统了,我会更准确地解释。我正在做一个我们有一些mac应用程序的项目。我们希望创建一个“平台”,让这些应用程序的客户能够获得这些鞋楦的最新版本。然后目的是首先创建一个 django 服务器,我们在其中存储有关软件版本的信息..等。然后,当软件的用户执行它时,它会自动向服务器发送一个http请求,以“检查”是否存在新版本。如果是,我们邀请他下载新版本,如果不是,则继续。

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

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()

我像这样更改了 urls.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'),

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

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

再次感谢你的帮助!

4

1 回答 1

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()

然后只分析响应。

于 2012-04-16T11:57:41.393 回答