【发布时间】:2015-05-16 20:30:36
【问题描述】:
我们有一些移动服务,基于谷歌地图(iOS 和 Android 的移动应用程序)。因此,服务器部分是一个 Java 应用程序,它接受来自客户端的连接。
在没有我的情况下,有一段时间,服务器被移动(重新定位)到另一个服务器,他们没有将 Thrift 服务移动到新服务器上。服务器工作正常,但 Android 应用程序只能通过 Apache Thrift 工作。因此,Android 开发人员向我提供了 .thrift 文件。
我可以使用这些数据创建服务吗?如何?我需要读什么?
.thrift 文件部分:
namespace cpp gb65.HelpMeService
namespace csharp gb65.HelpMeService
namespace java com.gb65.HelpMeService
namespace php com.gb65.HelpMeService
//Version
const i32 SERVICE_API_MAJOR_VERSION = 1;
const i32 SERVICE_API_MINOR_VERSION = 0;
enum Res
{
SUCCESS = 0,
EMAIL_AND_PASSWORD_NOT_FOUND = 1,
EMAIL_NOT_UNIQUE = 2,
EMAIL_VALUE_WRONG = 3,
CELLPHONE_NOT_UNIQUE = 4,
CELLPHONE_VALUE_WRONG = 5,
FIRST_NAME_VALUE_WRONG = 6,
LAST_NAME_VALUE_WRONG = 7,
PASSWORD_VALUE_WRONG = 8,
PHOTO_IS_TOO_LARGE = 9,
SESSION_NOT_FOUND = 10,
TASK_NOT_FOUND = 11,
PHOTO_NOT_FOUND = 12,
USER_NOT_FOUND = 13,
OTHER = 14,
MESSAGE_NOT_FOUND = 15,
OFFER_NOT_FOUND = 16,
ALREADY_FRIENDS = 17,
FRIENDSHIP_OFFER_NOT_FOUND = 18,
_LAST = 19
}
如果需要,我可以提供所有的 .thrift 文件代码。
【问题讨论】:
-
当然可以,只需查看Thrift tutorials 即可了解其工作原理。令我困惑的是,您可能还需要其他服务,例如业务逻辑等。生成的代码和服务器设置是不够的,您最终会得到一个空壳。您需要代码来充实该内容,以实现服务的功能。但是如果你有那个代码,那么你也应该有其余的,包括与 Thrift 相关的部分?简而言之:我有一种感觉,你错过了等式中一些非常重要的部分。
标签: java android server thrift