我将vibe.d用于我的其余API。我有两种方法:addUser
和getUser
。我使用了@path("/api/v3/users/")
,所以现在URL应该看起来像这样:http://127.0.0.1:8080/api/v3/users/user。 POST 方法可以在此URL下正常工作,但我无法使用 GET 方法。
我使用相同的URL(?someParams),但服务器使用 404 进行响应。我注意到,当我使用URL http://127.0.0.1:8080/api/v3/users/user/user时,它表示“从类型字符串转换为int类型时出现意外的'u'”,但是如果我在 user 之后加上了其他内容, /,则再次抛出404。
我确定我一定忽略了一些愚蠢的错误:D
@path("/api/v3/auth/")
interface IUserAPI
{
/** Adding a user */
User addUser(string email, string firstName, string lastName, string password, string locale);
/** Getting a user by id */
User getUser(int id);
}
/** User API */
class UserAPI : IUserAPI {
/** Testing user */
User user;
/** Adding a user */
@safe
User addUser(string email, string firstName, string lastName, string password, string locale) {
user = User(1, 0, email, firstName, lastName, password, locale, 0, false, "","", 0, "");
return user;
}
/** Getting a user by id */
@safe
User getUser(int id) {
logInfo(id.to!string);
return user;
}
}<br>
router.registerRestInterface(new UserAPI, MethodStyle.camelCase);
router.registerRestInterface(new LogsListAPI, MethodStyle.camelCase);