Ajax: 如何在提交时同时传递表单数据和凭据?

Ajax: How to pass both form data and credentials on submit?

主要问题:- Ajax: 如何在提交时同时传递表单数据和凭据?

我有以下函数,当用户点击提交按钮时调用该函数:

<script type="text/javascript">
function submitForm() {
    console.log("submit event");
    var fd = new FormData(document.getElementById("campaign_form"));
    console.log(fd);
    var username = $('#username').val();
    console.log(username);
    var password = $('#password').val();
    console.log(password);
    $.ajax({
        type: "POST",
        url: "http://localhost/testing/post_campaigns.php",
        data: fd,
        data: {
            "username": $('#username').val(), 
            "password": $('#password').val()
        },
    });
    return false;
}
</script>

我的phpURL被正确调用,但是我没有看到我的数据被传递。

例如,我通常希望在开发人员工具中看到:

http://localhost/testing/post_campaigns.php?username=XXX&password=YYY

但我只看到:

http://localhost/testing/post_campaigns.php

我的变量已正确写入控制台,因此我知道它们存在并具有值。

我确定问题出在我的语法上;但我不确定如何正确格式化我的 Ajax 以适应 object FormData 和字符串变量 username/password.

基本上,我的整体代码要求用户提供 sheet 他们在指定列 headers 下填写了特定值,我阅读了该信息并将其 POST 发送给我们广告服务器。因此,当我使用 information/changes 请求向我们的广告服务器执行 POST 请求时,我需要将用户提供的 FormData 和 Username/Password 传递到我的 PHP 文件由用户。

如果我的 question/dilemma 不清楚或者您需要更多代码,请告诉我。

谢谢,

编辑:根据请求在控制台中附上 FormData 的屏幕截图。

jQuery / AJAX 代码:- 与其他 javascript 变量一起发送表单数据。

<script>
    $('#btn').on("click", function () {
            var formData = new FormData($("#form1")[0]);
            formData.append('ipid',id); //id is the variable that has the data that I need
            var path = "http://localhost/testing/post_campaigns.php",
            $.ajax({
                url: path,
                type: "POST",
                data: formData,
                contentType: false,
                processData: false,
                success: function (stuff) {
                    $("#resp").html(stuff);
                }
            });
        });
    });
</script>

注:- 要附加参数,只需使用 append() 方法:

formData.append("param", "value");

在php这边我抓住了它:

 echo   $pid = ($_POST['ipid']);

注意:-有关此检查的更多参考

https://developer.mozilla.org/en-US/docs/Web/API/FormData/append