小程序与Django的对接主要涉及本地开发对接和远端部署测试两个阶段。以下是详细步骤:
本地开发对接
配置小程序的合法域名
在微信开发者工具中,进入“设置” -> “项目设置”,在项目详情中勾选“不校验合法域名、web-view(业务域名)、TLS版本以及HTTPS证书”。
创建Django项目和应用
使用PyCharm或其他IDE新建一个Django项目,并选择之前搭建的虚拟环境。
在项目中创建一个新的应用,例如`wx_login`,并编写接口逻辑。
编写接口逻辑
在`wx_login`应用的`views.py`中引入Django REST Framework (DRF) 和 `Response`,并编写接口逻辑。例如:
```python
from rest_framework.views import APIView
from rest_framework.response import Response
class WxLoginView(APIView):
def post(self, request):
处理登录逻辑
return Response({"message": "登录成功"})
```
启动Django服务器
在PyCharm中运行`manage.py runserver`,确保服务器在`http://127.0.0.1:8000/`正常启动。
测试接口
在浏览器中访问`http://127.0.0.1:8000/wx/wx_login/`,确保接口创建成功并可以正常工作。
远端部署测试
使用Git进行代码同步
将本地代码推送到Git仓库(如coding.net、oschina、码云等)。
在服务器上从Git仓库拉取代码,并进行安装依赖:
```bash
git clone cd pip install -r requirements.txt ``` 确保服务器上已经安装并配置好Python环境和Django项目。 如果需要,可以配置跨域资源共享(CORS),以便小程序能够访问Django服务器的接口。例如,使用`django-cors-headers`库: ```bash pip install django-cors-headers ``` 在Django的`settings.py`中添加`corsheaders`到`MIDDLEWARE`: ```python MIDDLEWARE = [ ... 'corsheaders.middleware.CorsMiddleware', ... ] ``` 配置CORS跨域请求白名单: ```python CORS_ORIGIN_ALLOW_ALL = True 在开发环境中可以允许所有来源 CORS_ORIGIN_WHITELIST = ( 'http://localhost:8000', 'http://127.0.0.1:8000', ) 在生产环境中可以指定允许的来源 ``` 将Django项目部署到服务器,确保服务器配置了正确的域名和HTTPS证书。 在服务器上配置反向代理(如Nginx或Apache),将HTTPS请求转发到Django应用。 总结 通过以上步骤,你可以完成小程序与Django的本地开发和远端部署测试。确保在整个过程中,所有网络通信都通过HTTPS进行,并且在开发阶段可以取消对合法域名的校验。这样,你的小程序就可以顺利与Django后端进行交互了。配置服务器
部署到服务器