与我之前提出的问题类似,我想知道 A)如何将单个数据属性传递给服务器扩展,以及 B)如何从服务器扩展源代码内部访问这些数据属性。作为侧边栏(不一定是这个问题的主要目的),是否可以从服务器扩展返回一组 FatFractal 对象?我在我的客户端应用程序中使用 FatFractal JavaScript SDK。
基本上,我正在创建一个简单的搜索实用程序,其中输入参数将传递给服务器扩展,服务器扩展将返回与搜索条件匹配的 FFUser 对象数组。
FFDL:
CREATE EXTENSION /SearchUsers AS javascript:require('scripts/Search').searchUsers();
应用程序JS代码:
function findUsers() {
if(!ff.loggedIn()) {
alert("You must be logged in to search for users.");
}
else {
var searchCriteria = $("#input-user-search").val();
// pass 'searchCriteria' to 'SearchUsers' extension
// acquire handle to 'matchedUsers' returned from 'SearchUsers'
...
}
}
服务器扩展JS代码:
var ff = require('ffef/FatFractal');
function searchUsers() {
var matchedUsers; // an array of FFUser objects
var searchInput; // the search criteria
// acquire handle to 'searchCriteria' passed from client app to assign to 'searchInput'
...
// return 'matchedUsers' to client app
}
...
exports.searchUsers = searchUsers;
同样,评论部分是我需要澄清的部分。其余的实现逻辑我相信我已经弄清楚了。提前感谢您的帮助!