是否有针对Web的黑名单IP的开放数据库?有很多公共网络代理你知道...这样的全球阻止维基百科使用的黑名单.
根据RFC http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html:
HEAD方法与GET相同,只是服务器不能在响应中返回消息体.响应HEAD请求的HTTP头中包含的元信息应该与响应GET请求时发送的信息相同.该方法可用于获得关于请求所暗示的实体的元信息,而无需转移实体主体本身.此方法通常用于测试超文本链接的有效性,可访问性和最近的修改.
对于HEAD请求的响应可以是可缓存的,因为响应中包含的信息可以用于从该资源更新先前缓存的实体.如果新字段值指示缓存的实体与当前实体不同(如Content-Length,Content-MD5,ETag或Last-Modified中的更改所示),则缓存必须将缓存条目视为陈旧.
根据这个定义,我们是否应该返回200相应的GET操作,我们是否应该返回,204因为没有内容?
就个人而言,我认为更好的解释是使用204状态代码.你的解释是什么?
在RESTful界面中,成功执行POST操作后应该是最佳状态代码?
注意:考虑在HTTP服务器答案中,Location密钥可以存在.
我糊涂了.谢谢你的回答.
我正在开发一个Rails应用程序,它具有JSON格式的REST API并且版本化(根据这个优秀的Ryan演员:http://railscasts.com/episodes/350-rest-api-versioning).
例如,有一个spec/requests规范:
require 'spec_helper'
describe "My Friends" do
describe "GET /my/friends.json" do
it "should get my_friends_path" do
get v1_my_friends_path, {}, {'HTTP_ACCEPT' => 'application/vnd.myapp+json; level=1'}
response.status.should be(401)
end
end
end
Run Code Online (Sandbox Code Playgroud)
它运作良好.但是(保持这个例子)我们如何编写路由规范?例如,这个规范是不正确的:
require 'spec_helper'
describe "friends routing" do
it "routes to #index" do
get("/my/friends.json", nil, {'HTTP_ACCEPT' => 'application/vnd.myapp+json; level=1'}).
should route_to({ action: "index",
controller: "api/v1/private/my/friends",
format: "json" })
end
end
Run Code Online (Sandbox Code Playgroud)
我尝试不同的方法(如request.headers['Accept']和@request.headers['Accept'],其中request是未定义和@request为零); 我真的不明白该怎么做.
我使用的是Ruby 1.9.3,Rails 3.2.6和rspec-rails 2.11.0.谢谢.
我们如何使用Content-Range的项目标题处理RESTful接口上的空集合?
例如,拥有42条记录,请求Range: items=0-41将返回所有内容,响应标头将为:Content-Range: items 0-41/42.
但是,Content-Range如果没有任何记录,我们如何处理标题?谢谢你的帮助.
编辑:
我的意思是,返回一个空集合,服务器可能想要返回Content-Range: items x-y/0,其中x和y是一个不同于0的值.但是哪一个?我认为这是一个棘手的问题,规范没有提到它.
有了Enum.find_index/2,我们可以找到元素的索引.但是,如果同一个元素多次出现,我们该怎么办?
我想有这样的行为:
iex> find_indexes(["a", "b", "c", "b", "b"], fn(x) -> x == "a" end)
[0]
iex> find_indexes(["a", "b", "c", "b", "b"], fn(x) -> x == "c" end)
[2]
iex> find_indexes(["a", "b", "c", "b", "b"], fn(x) -> x == "b" end)
[1, 3, 4]
Run Code Online (Sandbox Code Playgroud)
谢谢你的任何想法.
我们有一个Rails 3应用程序,它有一个映射的PostgreSQL数据库(有~10个表)activerecord.一切都很好.
但是,我们也可以使用:
mongoidgem).neo4j-rails创业板),而不是PostgreSQL的用于一些表.使用带有一个Rails ORM的数据库很简单,多亏了database.yml.但是当有多个ORM时,我们如何处理?有这么好的方法吗?例如,ActiveHash(和ActiveYaml)可以很好地与ActiveRecord配合使用.我认为有可能让不同的ORM协同工作.谢谢你的任何提示.
给定一个包含4个圆圈的数据库,其中每个圆圈都有一个半径和一个地理位置中心:
id | radius | latitude | longitude
---+--------+----------+----------
1 | 3 | 40.71 | 100.23
2 | 10 | 50.13 | 100.23
3 | 12 | 39.92 | 100.23
4 | 4 | 80.99 | 100.23
Run Code Online (Sandbox Code Playgroud)
注意:每个圆的经度是相同的,以保持简单.
假设我们是在圆2,我想找到附近的每一个圆圈,根据latitude/ longitude坐标和radius每圈.
例如,根据纬度/经度坐标,我们有这样的顺序:
9.42 <- 50.13 - 40.71)10.21 <- 50.13 - 39.92)30.86 <- 80.99 - 50.13)但根据纬度/经度坐标和每个圆的半径,我们应该:
1.79 <- 12 - 10.21)6.42 <- 9.42 - …我想将Ruby数组(可能包含一些子数组)扩展到另一个数组数组中,就像在这些示例中一样:
例1: [:foo, :bar]
[
[:foo, :bar]
]
Run Code Online (Sandbox Code Playgroud)
例2: [:foo, :bar, [:ki, :ku]]
[
[:foo, :bar, :ki],
[:foo, :bar, :ku]
]
Run Code Online (Sandbox Code Playgroud)
例3: [:foo, :bar, :baz, [:a, :i, :u, :e, :o], :qux]
[
[:foo, :bar, :baz, :a, :qux],
[:foo, :bar, :baz, :i, :qux],
[:foo, :bar, :baz, :u, :qux],
[:foo, :bar, :baz, :e, :qux],
[:foo, :bar, :baz, :o, :qux]
]
Run Code Online (Sandbox Code Playgroud)
例4: [:foo, :bar, :baz, [:a, :i, :u, :e, :o], [1, 2], :qux]
[
[:foo, :bar, :baz, :a, 1, :qux],
[:foo, :bar, :baz, …Run Code Online (Sandbox Code Playgroud) 我刚刚安装了Ubuntu 11.10和RVM 1.12.4(稳定版):
doug@doug-OnixN53SM:~$ curl -L get.rvm.io | bash -s stable
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 185 100 185 0 0 223 0 --:--:-- --:--:-- --:--:-- 968
100 8545 100 8545 0 0 5888 0 0:00:01 0:00:01 --:--:-- 5888
Downloading RVM from wayneeseguin branch stable
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 125 100 …Run Code Online (Sandbox Code Playgroud) 根据@Veraticus 对这个问题的回答,Web 身份验证框架将 current_user 的 ID 保存在会话 ID中,以便快速轻松地从数据库中检索用户(无需每次都在数据库上进行新查询时获取用户) .
这很棒,因为这正是我想要通过我正在编写的 API 对我自己的服务器(出于性能原因)执行的操作。
但我想知道session id ......我的意思是,如果服务器处理会话,客户端必须向他提供session id。
但是,我还想知道另一件事:一般来说,Web API 使用的是API 密钥(例如,https://api-docs.heroku.com/)。对于客户端来说,使用API 密钥和会话 ID可能很复杂......
我希望 Heroku 不会在每个 HTTP 请求中使用收到的 auth-token 执行数据库查询。但是如果他们不这样做,他们如何在没有会话 ID 的情况下对用户进行身份验证?
我糊涂了。非常感谢您的任何想法。
我有一个非常基本的网络应用程序的麻烦.这是我的文件:
<!DOCTYPE html>
<html lang="en" data-ng-app>
<body>
<div data-ng-controller="PlayersCtrl">
<div data-ng-repeat="player in players">
{{player.id}}
</div>
</div>
<script src="/angular.min.js"></script>
<script src="/players.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
function PlayersCtrl($scope, $http) {
$scope.players = [];
$http({
method: 'GET',
url: 'http://localhost:9292/hi'
}).success(function(data) {
$scope.players = data;
});
}
Run Code Online (Sandbox Code Playgroud)
require 'sinatra'
get '/' do
headers 'Access-Control-Allow-Origin' => '*'
headers 'Access-Control-Allow-Headers' => 'Authorization,Accepts,Content-Type,X-CSRF-Token,X-Requested-With'
headers 'Access-Control-Allow-Methods' => 'GET,POST,PUT,DELETE,OPTIONS'
send_file File.join(settings.public_folder, 'index.html')
end
Run Code Online (Sandbox Code Playgroud)
require 'sinatra'
require 'json'
get '/hi' do
headers 'Access-Control-Allow-Origin' => '*'
headers …Run Code Online (Sandbox Code Playgroud) 假设我们有一个具有这种形状的数组:[2, 5].可能的指数组合是:
[
[0, 0],
[0, 1],
[0, 2],
[0, 3],
[0, 4],
[1, 0],
[1, 1],
[1, 2],
[1, 3],
[1, 4]
]
Run Code Online (Sandbox Code Playgroud)
如果数组有n维度,有没有一种简单的方法在Ruby中生成索引?
rest ×5
api ×3
ruby ×3
arrays ×2
http ×2
neo4j ×2
activerecord ×1
algorithm ×1
angularjs ×1
blacklist ×1
concurrency ×1
cross-domain ×1
elixir ×1
geolocation ×1
http-headers ×1
mongodb ×1
mysql ×1
orm ×1
pagination ×1
paging ×1
postgresql ×1
proxy ×1
rspec ×1
rspec-rails ×1
ruby-1.9.3 ×1
rvm ×1
security ×1
sinatra ×1
sql ×1
ubuntu-11.10 ×1
web-services ×1
wikipedia ×1