首页 > 解决方案 > 如何制作 Vanilla JS XMLHttpRequest(Wordpress 网站)

问题描述

我是 wordpress 的新手,我正在尝试将 Django 项目转换为 wordpress。

我有一个包含 XMLHttpRequest 的 script.js 文件

function saveInfo() {

    let request = new XMLHttpRequest();
    request.open('POST', '/save/');

    let csrf = get_csrf();
    request.setRequestHeader('X-CSRFToken', csrf);
    
    request.onreadystatechange = () => {

        if (request.readyState === 4 && request.status == 200) {
            console.log(JSON.parse(request.responseText))
        }
    
    }

    request.send(JSON.stringify(datos));
 }

然后 Django 从该请求中获取数据,将其保存到数据库并发送包含该数据的电子邮件:

def saveToDB(request):
    if request.method == "POST":

        body = request.body.decode('utf-8')
        body = json.loads(body)

        client = Client(
            email=body['email'],
            edad=body['edad'],
        )
        response = client.save()

        subject = 'Nueva suscripción a TuKeto'
        message = 'Email: ' + body['email'] + body['altura']
        sendEmail = EmailMessage(
                subject, message,
                'example@gmail.com',
                ['example@gmail.com'],
                reply_to=[body['email']],
            )
        status = sendEmail.send()

        return HttpResponse("SAVED")

我在 jquery 中找到了示例,但它们不完整,我不知道如何将 ajax 连接到 wordpress 后端。

如何使用 vanilla js 发出此请求以及 wordpress 后端配置的示例将非常有用。

提前致谢。

标签: javascriptphpdjangowordpress

解决方案


推荐阅读