简体   繁体   中英

JQuery, Javascript, AJAX POST json to rest api

I have a problem with posting data to a REST API, it should be done like this:

curl -X POST -H "Accept: application/json" -H "Content-Type: application/json" \
 -d '{"event":{"title":"event", "description": "nice", "start": "2018-03-11T22:00:00.000Z"}}' \
 http://events.restdesc.org/events

I have the following code:

function eventedit(request){
    console.log(request);
    var title = $("#title").val();
    var desc = $("#desc").val();
    var start = $("#start").val();
    start += ".000Z";
    $.ajax({
        url: request,
        type: "POST",
        dataType:'json',
        success: function (response) {
            console.log(response);
        },
        error: function(error){
            console.log("Something went wrong", error);
        }
    });
}

Like you see, I need to add data in my ajax request, but I don't know how to do it, do I need to make a string containing those values? Or an array?

In your $.ajax call add data .

 $.ajax({
    url: request,
    type: "POST",
    data: {"event":{"title": title, "description": desc, "start": start}},
    dataType:'json',
    success: function (response) {
        console.log(response);
    },
    error: function(error){
        console.log("Something went wrong", error);
    }
});

for POST you can also use a shorthand $.post

  $.post(request, {"event":{"title": title, "description": desc, "start": start}}, function(data){
    console.log(data);
});

Just use it like this if you're making a POST

$.post(request, {title: title, description: desc, start: start}, function (data) {
    console.log(data);
});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM