python 基于Digngo 开发web程序和处理get、post请求

      工做须要开发一个python功能,本人Java出身,经过Process调用时,可能会有各类问题,以前吃过c/c++程序的亏,基于本身的python功底,咬咬牙,脑壳一热,决定开发一个python语言基于Digngo的web程序,Java经过http请求完成调用,出问题翻遍查找。html

 

一、建立项目python

    参照文档:http://www.runoob.com/django/django-first-app.htmlc++

     安装步骤:pip install djangoweb

     建立项目:cd 到要建立项目的目录django

                    django-admin startproject HelloWorld(项目名)json

     运行项目:python manage.py runserver 0.0.0.0:8000     浏览器

                     manage.py位置在第一层项目名下。cookie

     访问地址:http://localhost:8000/admin/数据结构

                    用户名 admin 密码adminapp

    建立请求:一、./HelloWorld/HelloWorld 目录下新建view.py,写入以下内容:

from django.http import HttpResponse
def hello(request):
    return HttpResponse("Hello world ! ")

                    二、修改urls.py,在urlpatterns中添加内容,url(r'^$',view.hello),最后的逗号必须有。

                    三、从新启动项目,浏览器输入请求地址:http://localhost:8001/ 便可看到返回结果。

 

二、异常处理

       Java请求python项目时报错,Forbidden (CSRF cookie not set.): xxx,解决方式是,修改settings.py文件,注释掉

        django.middleware.csrf.CsrfViewMiddleware',

 

三、请求处理

       建立项目没有花费多少时间,主要耗费在处理功能请求上,python的get和post请求和Java有很大不一样,它固定了数据结构,统一使用

QueryDict,这个结构是一种支持一个key ,多个value,value中又有key和value的数据结构,感受和json相似。如下是我用一个String请求后,获取数据对象的方法。

def add(request):
    context="";
    if request.method == 'POST':
        for key in request.POST:
           context=key
    else:
        # for key in request.GET:
        #     context=key
        return HttpResponse('{"code":102,"message":"不支持get请求,请使用post请求"}')
    
    return HttpResponse('{"code":0,"message":"操做成功,请求数据'+context+'"}')
相关文章
相关标签/搜索