如何解析响应[对象对象]

kit*_*ttu 2 javascript node.js express

The request is being sent from onclick of href=url. When this url is hit, I am returning data from server to client as a query string.

res.redirect("/#blog_post_details/?dataUrl="+response[0].attributes);
Run Code Online (Sandbox Code Playgroud)

And when I print using:

var posts = DataMixin.getParameterByName(dataUrl);
console.log('posts', posts); //I get [Object, Object]
Run Code Online (Sandbox Code Playgroud)

I also tried with JSON.Stringify: console.log('posts', JSON.Stringify(posts)); which prints the same with quotes "[Object,Object]"

Function to return query string:

getParameterByName: function (name, url) {
    if (!url) {
      url = window.location.href;
    }
    name = name.replace(/[\[\]]/g, "\\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}
Run Code Online (Sandbox Code Playgroud)

However, I am able to print response data on server:

{ created_at: '4/3/2017, 1:23:28 AM',
  details: 'jjj',
  id: 136,
  post_id: '1491162808010',
  title: 'Basic Syntax and Tag declaration',
  url: 'basic_syntax_and_tag_declaration',
  userImage: 'assets/img/spiritual-icon4.png',
  username: 'k999@gmail.com' }
Run Code Online (Sandbox Code Playgroud)

Note: I am using expressjs with nodejs

Que*_*tin 5

[Object, Object] is the value you are sending. Parsing it won't do any good, there is nothing useful to parse.

You need to fix how you are sending the data.

Encoding it as JSON is one approach:

var values = response[0].attributes;
var json_values = JSON.stringify(values);
var url_safe_json_values = encodeURIComponent(json_values);
res.redirect("/#blog_post_details/?dataUrl=" + url_safe_json_values
Run Code Online (Sandbox Code Playgroud)

then you parse the JSON (with JSON.parse not JSON.stringify (which does the opposite of parsing!)) at the other end.