报名
你如果用的 0.8 版本的 ActiveModelSerializer,有 gem https://github.com/skalee/active_model_serializers-namespaces
你如果用的 0.8 以上版本的,没做,但是有解决思路
用 defined? 稍微封装下你的 applicationController
检测是否存在带版本的 serializer 如果有就用,没有就用默认的,
例如
访问 V1::UsersController,
V1::UserSerializer 没有 就用 UserSerializer
缺陷是访问会变得慢一点
#4 楼 @smartepsh 完全独立的项目
前端完全是 js 项目 后端完全是 rails api
#必须显示指定serializer,不知原因,求解释
#应该是根据对象类型自动匹配到user上了
是的 active_model_serializers 会找模型对应的 serializer 如果不指定的话
可以试试 ping++
logo 设计的真好
今天刚好要用,结果搜索来搜索去,都没有 aliyun openapi 的 gem,果然还是得自己弄,可惜悬赏已经过期啦
赞~ 报名
#37 楼 @numbcoder 这种写法肯定是不科学的
#35 楼 @42thcoder @numbcoder 说来惭愧,我们的项目在 get 的时候大多数情况没在查询之前做参数验证,觉得我们开放出来的查询都会有索引,所以传错值问题引起的性能损失不大。主要考虑的还是安全问题,比如不做校验,会带来哪些安全上的风险呢?
#17 楼 @numbcoder 额 我好像没 get 到你这的点呢。
校验是放在 model 里的,当然你要在 action 里做一次校验,没什么不好的。如果你是怕多查数据库的话,你可以加个 redis 限制 api 的访问就好了
我们的 rails 项目就是纯 api 的,效果还行
#14 楼 @numbcoder rails 怎么做 rails-api 就怎么做呗 rails-api 是一个简化版的 rails 去掉了大多数关于 view 层的东西 https://github.com/rails-api/rails-api 之后现在 rails-api 已经被 merge 到 rails 里了
我们公司是 rails-api 写 api,web 端使用 reactjs + redux
可以试试我司的 flow.ci, 支持 ruby 可以直接填写自定义脚本 现在内测中
e 保养没倒吧 好像还 B 轮了
推荐 rubocop,会建议所有字符串如果没转义用单引号 效果不错
好像现在挂了(2016 年 03 月 25 日 14:56:57 北京联通)
天哪噜 难得看到重庆的,只不过铁山坪确实有点偏,我对那里的印象就是 jail。。。 家乡的团队是要支持的 祝好运~
我们团队目前实践的是 rails-api + 独立的 react js 项目
其实我觉得挺好的
特别适合爱好者针对 api 进行各种创新
PS 我们能小额赞助么
帅呆~
rei 好像一直建议 关闭 turbolinks @rei
codeschool 好像这个周末还有免费的班
#4 楼 @douxiance 人艰不拆啊朋友
#5 楼 @alucardpj 是的。。。但是你不查数据库,不过那些 7788,直接返回 200 压力也会小不少,最好的还是流量清洗,就是有点贵
自己之前写过的一个粗糙的,可以借鉴一下
# Controller 里,
before_action :forbid_abuse_request
...
def forbid_abuse_request
ip = request.remote_ip
project_md5 = calculate_md5
key = "#{ip} #{project_md5}"
exists = $request_redis.exists key
if exists && $request_redis.get(key).to_i > 100
Rails.logger.warn "ABUSE_IP #{key}"
return render json: { status: 'ok' }
end
$request_redis.incr key
$request_redis.expire key, 60 unless exists
end