module Sinatra::LinkHeader

Sinatra::LinkHeader

Sinatra::LinkHeader adds a set of helper methods to generate link HTML tags and their corresponding Link HTTP headers.

Usage

Once you had set up the helpers in your application (see below), you will be able to call the following methods from inside your route handlers, filters and templates:

prefetch

Sets the Link HTTP headers and returns HTML tags to prefetch the given resources.

stylesheet

Sets the Link HTTP headers and returns HTML tags to use the given stylesheets.

link

Sets the Link HTTP headers and returns the corresponding HTML tags for the given resources.

link_headers

Returns the corresponding HTML tags for the current Link HTTP headers.

Classic Application

In a classic application simply require the helpers, and start using them:

require "sinatra"
require "sinatra/link_header"

# The rest of your classic application code goes here...

Modular Application

In a modular application you need to require the helpers, and then tell the application you will use them:

require "sinatra/base"
require "sinatra/link_header"

class MyApp < Sinatra::Base
  helpers Sinatra::LinkHeader

  # The rest of your modular application code goes here...
end

Public Class Methods

registered(_base) click to toggle source
# File lib/sinatra/link_header.rb, line 128
def self.registered(_base)
  puts "WARNING: #{self} is a helpers module, not an extension."
end

Public Instance Methods

prefetch(*urls) click to toggle source

Sets Link HTTP header and returns HTML tags for telling the browser to prefetch given resources (only supported by Opera and Firefox at the moment).

# File lib/sinatra/link_header.rb, line 58
def prefetch(*urls)
  link(:prefetch, *urls)
end
stylesheet(*urls) click to toggle source

Sets Link HTTP header and returns HTML tags for using stylesheets.

# File lib/sinatra/link_header.rb, line 64
def stylesheet(*urls)
  urls << {} unless urls.last.respond_to? :to_hash
  urls.last[:type] ||= mime_type(:css)
  link(:stylesheet, *urls)
end