algunos navegadores no envían origin
This commit is contained in:
parent
aae96ede6f
commit
91a87405bc
2 changed files with 6 additions and 1 deletions
|
@ -26,6 +26,11 @@ module Api
|
||||||
def origin
|
def origin
|
||||||
request.headers['Origin']
|
request.headers['Origin']
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Los navegadores antiguos no envían Origin
|
||||||
|
def origin?
|
||||||
|
!origin.blank?
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -85,7 +85,7 @@ module Api
|
||||||
# XXX: Este header se puede falsificar de todas formas pero al
|
# XXX: Este header se puede falsificar de todas formas pero al
|
||||||
# menos es una trampa.
|
# menos es una trampa.
|
||||||
def site_is_origin?
|
def site_is_origin?
|
||||||
return if site.urls(slash: false).any? { |u| origin.to_s.start_with? u }
|
return if origin? && site.urls(slash: false).any? { |u| origin.to_s.start_with? u }
|
||||||
|
|
||||||
@reason = 'site_is_not_origin'
|
@reason = 'site_is_not_origin'
|
||||||
head :precondition_required
|
head :precondition_required
|
||||||
|
|
Loading…
Reference in a new issue