2016-03-16 3 views
1

Я, скорее всего, что-то не так, но не уверен, что. Я пытаюсь проверить NetSuite Restlet (веб-сервис) с помощью FF-плаката. Я могу использовать Get для работы, передавая данные в URL. Тем не менее, я получаю сообщение об ошибке, используя метод Put.Путь не работает с использованием плаката

{ "Ошибка": { "код": "SYNTAX_ERROR", "сообщение": "SyntaxError:. Пустая JSON строка (нуль $ Lib # 3)"}}

Это ударяя мой улов блок ниже. Я читал, что для создания или обновления мы должны использовать Put так не уверен, почему Get works, но не 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 Test

+0

Можете ли вы добавить свой код для восстановления? – prasun

+0

Несомненно. Я сжал его, чтобы сделать его более читаемым. – MG2016

+0

Из-за ошибки это похоже на ошибку, вызванную недействительным JSON. Пожалуйста, проверьте JSON, который вы отправляете в качестве playload для вашего метода PUT. – Rockstar

ответ

2

Запрос PUT не будет искать данные в URL. Он будет искать JSON в теле самого запроса. Поэтому вместо &name=Restlet Test вам нужно будет отправить объект в тело запроса, например { "name" : "Restlet Test" }

Смежные вопросы