mps.json.encoderequest

Преобразуйте данные MATLAB в запросе к серверу к тексту JSON с помощью MATLAB Production Server схема JSON

Синтаксис

text = mps.json.encoderequest(rhs)
text = mps.json.encoderequest(rhs,Name,Value)

Описание

пример

text = mps.json.encoderequest(rhs) кодирует запрос, который вводится к развернутой функции MATLAB®, использующей схему JSON для MATLAB Production Server™. Это создает запрос к серверу, который включает переменные MATLAB и опции, такие как 'Nargout' и 'OutputFormat', которые необходимы, чтобы позвонить MATLAB Production Server.

пример

text = mps.json.encoderequest(rhs,Name,Value) задает дополнительные опции с одним или несколькими аргументами пары "имя-значение" для определенных входных случаев.

Примеры

свернуть все

mps.json.encoderequest({[1 2 3 4]})
ans =
    '{"rhs":[[[1,2,3,4]]],"nargout":1,"outputFormat":{"mode":"small","nanType":"string"}}'

Позвольте rhs = {['Red'], [15], [1 3; 5 7], ['Green']}.

mps.json.encoderequest(rhs, 'Nargout', 3, 'OutputFormat', 'large')
ans =
    '{"rhs":["Red",15,[[1,3],[5,7]],"Green"],"nargout":3,"outputFormat":{"mode":"large","nanType":"string"}}'

Используйте функцию MATLAB horzcat, который горизонтально конкатенирует две матрицы.

a = [1 2; 5 6];
b = [3 4; 7 8];
mps.json.encoderequest({horzcat(a,b)})
ans =
    '{"rhs":[[[1,2,3,4],[5,6,7,8]]],"nargout":1,"outputFormat":{"mode":"small","nanType":"string"}}'

Выполните mps.json.encoderequest и mps.json.decoderesponse, чтобы вызвать функцию, развернутую на MATLAB Production Server с помощью webwrite. В этом случае студенческие имена и их соответствующие очки развертываются на MATLAB Production Server к функции sortstudents что студенты видов на основе их очков. Возвращенным результатом является эквивалент вызову функционального sortstudents(struct('name', 'Ed', 'score', 83), struct('name', 'Toni', 'score', 91)) из MATLAB.

data = {struct('name', 'Ed', 'score', 83), struct('name', 'Toni', 'score', 91)};
body = mps.json.encoderequest(data);

options = weboptions;

% Create a weboptions object that instructs webread to return JSON text
options.ContentType = 'text';

% Create a weboptions object that instructs webwrite to encode character vector data as JSON to post it to a web service
options.MediaType = 'application/json';    

response = webwrite('http://localhost:9910/studentapp/sortstudents', body, options);

result = mps.json.decoderesponse(response);

Входные параметры

свернуть все

Входные параметры для функции MATLAB, развернутой на MATLAB Production Server, который называется, задали как вектор ячейки.

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: mps.json.encoderequest(rhs, 'Format', 'large')

Количество выходных аргументов в пользу функции, развернутой на MATLAB Production Server, заданном как пара, разделенная запятой, состоящая из 'Nargout' и количество выходных аргументов.

mps.json.encoderequest(rhs, 'Nargout', 3).

Формат, чтобы закодировать rhs, заданный как пара, разделенная запятой, состоящая из 'Format' и формата 'small' или 'large'.

Формат small является более простым представлением типов данных MATLAB в JSON, тогда как формат large является более типичным представлением. Для получения дополнительной информации см. Представление JSON типов данных MATLAB.

Формат, чтобы закодировать NaN, Inf, -Inf в rhs, заданном как пара, разделенная запятой, состоящая из 'NaNInfType' и типов данных JSON 'string' и 'object'.

Формат для ответа от функции MATLAB, развернутой на MATLAB Production Server, заданном как пара, разделенная запятой, состоящая из 'OutputFormat' и формата 'small' или 'large'.

Выходной формат установлен с помощью mps.json.encoderequest(rhs, 'OutputFormat', 'large').

Введите для ответа от функции MATLAB, развернутой на MATLAB Production Server, содержащем NaN, Inf, -Inf, заданный как пара, разделенная запятой, состоящая из 'OutputNaNInfType' и типа данных JSON 'string' и 'object'.

NaN-тип для выходного ответа установлен с помощью mps.json.encoderequest(rhs, 'OutputNaNInfType', 'object').

Формат text для удобочитаемости, заданной как пара, разделенная запятой, состоящая из 'PrettyPrint' и логического 'true' или 'false'. Синтаксисом является mps.json.encoderequest(rhs,'PrettyPrint',true).

Выходные аргументы

свернуть все

JSON-форматированный-текст для схемы JSON для MATLAB Production Server, возвращенного как вектор символов.

Введенный в R2018a