Skip to main content

Laravel 5.1 - Posting and Retrieving JSON

This is how you can use jQuery to POST data and retrieve it within the controllers.


To Send Data:

First off on the page where you are POSTing data from, you need to have a CSRF_TOKEN as a meta tag.

<meta name="csrf_token" content="{{ csrf_token() }}" />

Then in the JavaScript, pull the token and send it along with the POST as headers.

<script type="text/javascript">

var CSRF_TOKEN = $('meta[name="csrf_token"]').attr('content');
  
var jsonData = "{ 'data' : 'data' }";  

$.ajax({
    url: '/route/path',    
    type: 'POST',
    data: jsonData,
    headers: {
     'X-CSRF-TOKEN': CSRF_TOKEN
    },   
    dataType: 'JSON',
    success: function (data) { }
});

</script>

To Retrieve Data:

Setup a post route in /app/Http/routes.php

Route::post('/route/path', 'ControllerName@controllerMethod');

Then setup the controller

class ControllerName extends Controller
{
    public function controllerMethod()
    {
        $jsonData = Input::json()->all();

         // Do Something Here

        return response()->json("{ 'data' : 'data' }");
    }
}

Comments

Popular posts from this blog

Parsing XML in .NET

Let's say you have XML as <root>    <item>       <name1>value1</name1>       <name2>value2</name2>       <name3>value3</name3>    </item>    <item>       <name1>value1</name1>       <name2>value2</name2>    </item> </root> To parse it we use the .NET XmlDocument class: // Create the XmlDocument object XmlDocument xmlDoc = new XmlDocument(); // Load the Xml into the object xmlDoc.Load(objResponse.GetResponseStream()); // Get the element like it was a path XmlNode errorNode = xmlDoc.SelectSingleNode("root/item/name1"); if (errorNode != null) { litResult.Text = errorNode.InnerText; return; }

Checking / Creating New Folders from an SMTP Import

To check if a folder exists in the CMS already you have to create a folder list. There is no direct commands to do this. dim folderExists folderExists = false set folderlist = asset.getFolderList("/path/") 'loop through folder list do while folderlist.nextEntry() if folderlist.item("_cmsLabel") = "foldername" folderExists = true exit do end if loop To create a folder in the CMS, first make a Model that only contains a folder. Then do the following: if folderExists = false then 'create folder set dict = system.createDictionary() fId = asset.create(folderName, "/Site/Global/Picture of the Week/", "/System/Models/Directory Builder", dict) end if The parameters for the asset.create("label", "Path", "Model to use", content or dictionary)

Duplicate Items in the File -> New menu.

It looks like a bug, but the CMS is trying to figure out what kind of models would apply to the folder in question. To resolve this issue. 1. Goto the problematic folder. 2. Goto View -> Properties -> Access 3. Click on the New Tab 3. Uncheck All 'New Dependency' That's it. That should resolve the problem.