Type to search...

URL resource type and link

This is where you need to reference to the base image that you need to transform and service. The source image can be one within the ShardImage system or a remote file on, for example, Google Cloud Storage Object, Amazon S3 Object, HTTP link, etc.

Structure

/{type}/{link}

Types

  • i or internal: within the system
    • e.g.: /i/my-photo.jpg
  • r or remote: remote content
    • e.g.: /r/http:%2f%2fexample.com%2fmyPhoto.jpg%3Fversion%3D2011%7Csummer
  • f or fetch: any content (the previous ones combined); in this case, the SEO part cannot be used in the URL, but there is no need to escape the link, either
    • e.g.: /f/http://example.com/myPhoto.jpg?version=2011|summer
    • fetch supports base64 encoded URLs as well

Remote content and fetch protocols

  • fb or facebook: Facebook photo
    • pages photo: fb://pages/{page ID}
  • http or https: HTTP/HTTPS
  • youtube: YouTube video thumbnail
    • youtube://{video ID}
  • cloudinary: Cloudinary images
    • cloudinary://{cloud id}/{public ID}
  • commons: Wikimedia Commons media content
    • commons://{path1}/{path12}/{object.extension}
  • gs: Google Cloud Storage Object
    • gs://{bucket}/{path-of-object}
  • aws: Amazon S3 Object
    • aws://{bucket}:{region}/{path-of-object}

Limitations

  • gs (Google Cloud Storage) works only in the presence of the files symbolizing permissions
  • internal and gs types yield the best responses, since these are the services of Google Cloud or they have Google Cloud behind them.
    • the speed of the service depends on how much the system is in use, meaning that a continuously strained cloud (> 100 request/sec) produces smaller delay times 5-10 minutes later
  • in the case of youtube, the best quality thumbnails are used - older videos may have thumbnails that are of worse quality
  • remote contents are not cached, but they’re rather downloaded at each referral - excluding CDN that contains and services the transformed images regardless of the ShardImage system
  • facebook currently supports the display of public pages only, but not those of private users

Examples

Table of contents