Что такое хорошая стратегия, чтобы разоблачить конечную точку как общедоступную. Наш Taffy API имеет аутентификацию в каждой конечной точке, но мы также хотим выявить некоторые конечные точки без аутентификации. Моя первоначальная стратегия создает другую папку в ресурсах, называемых/public, которые могут обойти аутентификацию.Вывести конечную точку как общедоступную
У нас есть 2 способа аутентификации. 1. Выполните проверку подлинности с помощью ключа API в запросе 2. Базовая аутентификация
Наша onTaffyRequest
function onTaffyRequest(verb, cfc, requestArguments, mimeExt){
local.status = "forbidden";
local.invalidReturnData = representationOf(local.status).withStatus(401);
if(structKeyExists(arguments.requestArguments, "apiKey")){
}
/* CATCH NO BASIC auth*/
//if username is blank return false
if (structAuth.username is ""){
return local.invalidReturnData;
}
//check invalid password
if(structAuth.password is ""){
return local.invalidReturnData;
}
return true;
}
Человек, изо рта лошади. – Leeish
методMetadata.keyExists ("allow_public") не работал в CF10. Я изменил его на if (StructKeyExists (methodMetadata, "allow_public") && methodMetadata.allow_public == true) и теперь отлично работает. Спасибо – Vlad
Да, поскольку вы не указали версию ACF, я просто предположил, что самый последний синтаксис был в порядке. Рад, что ты это понял. –