不使用Poster工作

时间:2016-03-16 12:21:35

标签: json restlet netsuite poster

我很可能做错了但不确定是什么。我正在尝试使用FF海报测试NetSuite Restlet(Web服务)。我可以通过在URL中传递数据来使用Get来工作。但是,使用Put方法时出错。

{“error”:{“code”:“SYNTAX_ERROR”,“message”:“SyntaxError:空JSON字符串(null $ lib#3)。”}}

它击中了我的下方。我读到要创建或更新我们应该使用Put所以不确定为什么Get工作但不是Put?

function CreateRecord(jsonobject)
{
    try
    {
        nlapiLogExecution('DEBUG', '  in get =  ');

        var jsonString = JSON.stringify(jsonobject)
        nlapiLogExecution('ERROR', 'JSON', jsonString);

        // Mandatory
        var name = jsonobject["name"];
        nlapiLogExecution('DEBUG', '  name =  ', name);

        var record = nlapiCreateRecord('customrecordtest');
        record.setFieldValue('name', name);
        var id = nlapiSubmitRecord(record, true);
        nlapiLogExecution('DEBUG', 'id  =  ', id);
        return jsonobject;
    }
    catch (err) 
    {
        nlapiLogExecution('ERROR', 'Error', err.message);       
        return err.message;
    } 
}

海报:

https://rest.sandbox.netsuite.com/app/site/hosting/restlet.nl?script=351&deploy=1&name=Restlet测试

1 个答案:

答案 0 :(得分:2)

PUT请求不会在URL中查找数据。它将在请求本身中查找JSON。因此,您需要在请求正文中发送一个对象&name=Restlet Test

,而不是{ "name" : "Restlet Test" }