Генерация URL для rest API

Для генерации адреса c целью доступа к API есть специальный метод

SUGAR.App.api.buildURL(
	module, // Строка, имя подуля (Calls,Accounts,Opportunities)
	action, // действие, параметр необязательный,
			// прилепляется в конец итогового URL
	attributes, // необязательный объект,
				// можно задать id записи, link и relatedId
	params // необязательный объект для дополнения адреса get переменными
)

К примеру для привязки существующего звонка к сделке — url должен быть следующего вида
/<module>/:record/link/:link_name/:remote_id
для получения такого результата параметры должны быть следующими

SUGAR.App.api.buildURL(
	'Accounts', // основной модуль
	'', // не нужен в данном случае
	{
		link : 'calls', // связанный модуль
		id : '123-456', // ид сделки (записи основного модуля)
		relatedId : '789-012' // ид звонка (записи связанного модуля)
	}
)

на выходе получаем следующий url:
rest/v10/Accounts/123-456/link/calls/789-012
его уже можно использовать в вызове методов rest API

Для случаев типа /<module>/filter/count — достаточно указать модуль и в качестве action — оставшуюся часть ссылки «filter/count»

SUGAR.App.api.buildURL('Accounts', 'filter/count')

Параметр params этого метода введен, видимо, на всякий случай, совершенно, правда, непонятно на какой.
Этот метод всегда работает в паре с SUGAR.App.api.call, который принимает объект data со всеми данными, которые необходимо передать на сервер, и сам уже решает куда помещать эти данные: в post или в get параметры.

Добавить комментарий