Nodes/comfyui-extras/远程图像加载器
ComfyUI Node

远程图像加载器

Grab any image from a URL without leaving the canvas

By assemly·Created about a year ago·Updated about a year ago· 5
远程图像加载器
    • image
    urlhttps://example.com/image.jpg
    cache_timeout3600
    api_key

    The name oversells it a little

    RemoteImageLoader sounds like an API wrapper that calls some cloud service and conjures an image. It isn't. It's a "load image from a URL" node: you give it an https:// link, it downloads the file, and hands you back a normal ComfyUI IMAGE tensor. No API, no key, no model - same shape as what a local LoadImage gives you, which is exactly the point.

    Where it earns its keep: reference photos, ControlNet source images, an exercise preview, anything you'd otherwise Alt-Tab to your browser for and drag in by hand. The pack that ships it is a Chinese-language "learning center" (ComfyUI 学习中心) with tutorial chapters, and its exercises use this node to pull images straight off the web. Outside that, it's a genuinely handy utility when you want a workflow to stay self-contained.

    How it works

    Under the hood it's a requests.get with a browser User-Agent and a 10-second timeout; the response is decoded with PIL and converted to a tensor. The clever bit is the cache: the URL is hashed into a filename in ComfyUI's temp directory (remote_cache), and that file is reused until it goes stale. So repeat runs of the same workflow don't re-download.

    The inputs that matter:

    • url (required) - the full http:// or https:// link.
    • cache_timeout (optional, seconds, default 3600, range 0–86400) - how long the cached copy counts as fresh. Set it to 0 and it re-downloads every run.
    • api_key (optional, default empty) - if set, sent as an Authorization: Bearer <key> header on the request.

    Output is image (IMAGE), so it plugs straight into anything that takes an image - an img2img pipeline, a ControlNet preprocessor, a VAE encode, whatever.

    Where people get burned

    First, the failure mode is polite but confusing. If the download fails, the node doesn't raise and kill your queue - it returns a gray 480×240 placeholder card with a red header and a Chinese error message. That's great for a batch that must keep going, and maddening if you don't realize the card is the error. Look for the gray card.

    Second, lots of URLs just won't work. Cloudflare-fronted sites and hotlink-protected image hosts answer with a 403 or a login page, which fails or decodes as garbage → gray card again. And that api_key field deserves a moment of paranoia: it's sent to whatever host your URL points at. Don't paste a real cloud key in there unless you trust the endpoint. A node that takes a credential and phones a URL you typed is exactly the shape of thing this ecosystem has been burned by before.

    Installing it

    It ships in the assemly/comfyui-extras pack (internally titled "ComfyUI 学习中心"). Easiest route: ComfyUI Manager, search "comfyui-extras" or "学习中心", install, restart. Or the manual way:

    cd ComfyUI/custom_nodes
    git clone https://github.com/assemly/comfyui-extras
    # restart ComfyUI
    

    Dependencies are light - pillow and aiohttp, both already in any stock ComfyUI install. No models to download for this node, though the pack's tutorial exercises reference HuggingFace model files, so don't be surprised if a chapter wants a big download.

    The honest verdict

    It's a niche utility from a small, barely-known pack - zero real installs to speak of, and the README still reads like a template (it tells you to clone from a placeholder repo). But it does exactly one job and does it fine. If you regularly pull images from URLs into the canvas, it's a fair trade for skipping the manual download step.

    Category学习中心

    Inputs (3)

    NameTypeDefaultDescription
    urlSTRINGhttps://example.com/image.jpg
    cache_timeoutoptINT36000–86400
    api_keyoptSTRING

    Outputs (1)

    NameTypeDescription
    imageIMAGE