无法调用AJAX POST请求

时间:2017-08-17 07:16:01

标签: jquery arrays json ajax hyperledger-fabric

我发送的数据值为Json数据。

我无法通过AJAX发布请求获得成功。任何人都可以帮我解决这个问题。

formInfo = "{\"name\":\"raj\",\"empId\":\"1242\",\"contact\":\"177\",\"email\":\"raj@vl.com\",\"fUpload\":\"\"}";
    argsarray =[];
    argsarray[0]="fileupload";
    argsarray[1]= formInfo;

$.ajax({
        url: "http://localhost:4000/channels/mychannel/chaincodes",
        type: 'POST',
        dataType: "json",
        contentType: "application/json; charset=utf-8",

        data: {
            chaincodeName:"changedneww707",
            chaincodeVersion:"v0",
            functionName:"init",
            args:argsarray
        },
        beforeSend: function(xhr){xhr.setRequestHeader('Authorization', 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1MDI5Nzk1ODMsInVzZXJuYW1lIjoiQmFycnkiLCJvcmdOYW1lIjoib3JnMiIsImlhdCI6MTUwMjk0MzU4M30.nsZK_T0Gj5yeA7xTuYE0YRcHIyb33mXOTSrll-bOXKE');},
        success: function(res) {
        console.log("Redirecting to Aftemplate");

        },
        error: function(xhr, status){
            console.log("error : " + status);
        }
    }); 

3 个答案:

答案 0 :(得分:0)

您需要序列化您的JSON

data:{  
      chaincodeName:"changedneww707",
      chaincodeVersion:"v0",
      functionName:"init",
      args:JSON.stringify(argsarray)
   }

答案 1 :(得分:0)

对于GET请求,数据字段将转换为查询字符串(如果尚未是字符串)并附加到URL。您的请求类型为POST,将您的数据转换为字符串,如下所示:

data:JSON.stringify(yourDataObject)

答案 2 :(得分:0)

从版本1.0.0开始,Hyperledger Fabric不再具备通过REST API工作的功能,有一组SDK可以让您与对等方交互并调用链代码。这些是SDK:

  1. Java SDK
  2. Node SDK
  3. Go SDK
  4. Python SDK