401 ошибка в Айкау при выполнении запроса репо
Я пытался помочь приведенному ниже предложению на простом примере. может кто-предоставить-Aikau-форм-пример-с-данные загрузки
По сути, я делал бы запрос на репо, когда диалоговое окно формы загружается, и я хочу отобразить в этом документе libray noderef. Поэтому я вызвал makeRepoRequest() во время загрузки диалога, но вкладка сети выдает ошибку 401.
Пожалуйста, дайте мне знать, что не так с этим образцом?
/* studentForm.get.js */
function makeRepoRequest()
{
var alfDestination = "something";
var site = page.url.templateArgs.site;
var result = remote.call("/slingshot/doclib/container/" + site + "/documentLibrary");
return result.status.code;
if (result.status.code == status.STATUS_OK) {
alfDestination = JSON.parse(result).container.nodeRef;
}
}
var formControls = [
{
name: "alfresco/forms/controls/TextBox",
config: {
name: "name1",
label:"Name",
placeHolder:"Enter Name Here",
visibilityConfig: {
initialValue: true
}
}
},
{
name: "alfresco/forms/controls/TextBox",
config: {
label:"Age",
name: "age",
placeHolder:"Enter Age Here",
visibilityConfig: {
initialValue: true
}
}
}
,
{
name: "alfresco/forms/controls/TextBox",
config: {
label:"NodeRef",
name: "nodeRef",
visibilityConfig: {
initialValue: true
},
value : makeRepoRequest()
}
}
];
var showDialog = {
name: "alfresco/buttons/AlfButton",
config: {
readOnly:"true",
id:"dialog1",
label: "Create New Student",
additionalCssClasses: "call-to-action",
publishTopic: "ALF_CREATE_FORM_DIALOG_REQUEST",
publishPayloadType: "PROCESS",
publishPayload: {
dialogTitle: "Student Form",
dialogConfirmationButtonTitle: "Register",
dialogCancellationButtonTitle: "Cancel",
formSubmissionTopic: "ALF_CRUD_CREATE",
formSubmissionPayloadMixin: {
url: "api/type/cm%3Astudent/formprocessor"
},
fixedWidth: true,
widgets: formControls
}
}
};
model.jsonModel = {
widgets :[showDialog
],
services : [
"alfresco/dialogs/AlfDialogService",
"alfresco/services/CrudService"
]
};
2 ответа
Код состояния 401 указывает, что пользователь не аутентифицирован. Где вы работаете с этим кодом? Это на Share или автономный клиент Aikau? Пользователь вошел в систему? Есть ли у них необходимые разрешения для доступа к этому API? Являются ли они членом сайта? Какую конфиденциальность имеет сайт?
Я проверил ваш код, указав имя моего сайта статически (ex demo) в alfreso sdk, он работает нормально и дает мне nodeRef с использованием этого кода
function makeRepoRequest()
{
var alfDestination = "something";
var site = "demo";
var result = remote.call("/slingshot/doclib/container/" + site + "/documentLibrary");
if (result.status.code == status.STATUS_OK) {
alfDestination = JSON.parse(result).container.nodeRef;
}
return alfDestination ;
}
Вы проверили, что любое имя сайта является правильным? Я проверил этот код с помощью URL браузера.