我需要一个能够接收和保存来自松弛聊天室的文件的松散机器人.
问题是:slack不发送文件内容,而是指向文件的链接数组.其中大多数,包括下载链接都是私有的,无法通过bot访问.它确实发送了一个公共链接,但该链接指向文件预览,它没有文件本身(这是一个例子).
所以问题是:如何通过bot访问上传的文件?
我正在使用https://github.com/kickstarter/rack-attack/#throttles来限制对某些网址的请求.
机架攻击文档显示了如何根据请求IP或请求参数进行限制,但我想要做的是每个用户的限制请求.因此,无论IP如何,用户都应该能够在特定时间范围内发出不超过n个请求.
我们使用设计进行身份验证,我想不出根据请求唯一识别用户的简单方法.
我应该在会话/ cookie中存储用户ID吗?也许是uniq哈希?对于这样做的最佳方式,您有什么看法?
花了一些时间来解决这个问题:
gem install json
Run Code Online (Sandbox Code Playgroud)
导致此错误:
Building native extensions. This could take a while...
ERROR: Error installing json:
ERROR: Failed to build gem native extension.
/home/user/.rvm/rubies/ruby/bin/ruby -r ./siteconf20150611-1112-jqgxzj.rb extconf.rb
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
compiling generator.c
linking shared-object json/ext/generator.so
/usr/bin/ld: cannot find -lgmp
collect2: error: ld returned 1 exit status
make: *** [generator.so] Error 1
make failed, exit code 2
Run Code Online (Sandbox Code Playgroud)
这里重要的一行是"找不到-lgmp".