Welcome to the Linux Foundation Forum!

Chaptet 8 - Single-Origin, Multi-Route Proxy, Invalid URL

I followed the code in the course and updated my app.js too look like this

  1. 'use strict'
  2. const proxy = require('fastify-http-proxy')
  3. module.exports = async function (fastify, opts) {
  4. fastify.register(proxy, {
  5. upstream: 'htt‌ps://news.ycombinator.com/'
  6. })
  7. }

after running the app, I got this error.

TypeError [ERR_INVALID_URL]: Invalid URL: htt‌ps://news.ycombinator.com/
[fastify-cli] app crashed - waiting for file changes before starting..

any solutions for this one?

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Comments

  • Posts: 270
    edited September 2021

    @reuben158 you've somehow included an invisible zero width non-joiner character, just before the "p" in https, which makes the url invalid.

    https://www.fileformat.info/info/unicode/char/200c/index.htm
    https://en.wikipedia.org/wiki/Zero-width_non-joiner

  • Hi @davidmarkclements, I am now getting this error

    `
    18:30:10 ✨ Server listening at http://127.0.0.1:3000
    18:30:12 ✨ incoming request GET xxx /
    18:30:12 ✨ fetching from remote server
    AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value:

    assert(this.servername)

    [fastify-cli] app crashed - waiting for file changes before starting...
    `

  • @reuben158 did you get this error in WSL as well?

    1. "use strict";
    2. const path = require("path");
    3. const AutoLoad = require("fastify-autoload");
    4. module.exports = async function (fastify, opts) {
    5. // Place here your custom code!
    6. fastify.register(require("fastify-http-proxy"), {
    7. upstream: "https://news.ycombinator.com/",
    8. });
    9. // Do not touch the following lines
    10. // This loads all plugins defined in plugins
    11. // those should be support plugins that are reused
    12. // through your application
    13. fastify.register(AutoLoad, {
    14. dir: path.join(__dirname, "plugins"),
    15. options: Object.assign({}, opts),
    16. });
    17. // This loads all plugins defined in routes
    18. // define your routes in one of these
    19. fastify.register(AutoLoad, {
    20. dir: path.join(__dirname, "routes"),
    21. options: Object.assign({}, opts),
    22. });
    23. };

    With fastify 3.x.x this code above is generated. Paste the custom code and delete the root.js (or uncomment or change the endpoint, whatever...)

  • @reuben158 lmk if you still need help with this otherwise we'll close this thread soon

  • Posts: 22
    edited September 2022

    @davidmarkclements said:
    @reuben158 you've somehow included an invisible zero width non-joiner character, just before the "p" in https, which makes the url invalid.

    https://www.fileformat.info/info/unicode/char/200c/index.htm
    https://en.wikipedia.org/wiki/Zero-width_non-joiner

    I got the same issue and is when we copied the code from that page (Single-Origin, Multi-Route Proxy (1)), VsCode told me "The character U+200c is invisible."

  • With the same code right now we got an error FastifyWarning.fastify-http-proxy: fastify-http-proxy has been deprecated., because of the new fastify version.

    to solve that please instead use npm i @fastify/http-proxy and in root:

    1. 'use strict'
    2. const proxy = require('@fastify/http-proxy')
    3. module.exports = async function (fastify, opts) {
    4. fastify.register(proxy, {
    5. upstream: 'https://news.ycombinator.com/'
    6. })
    7. }
  • Posts: 160

    @fcioanca can we please address the hidden characters problem on the learning platform asap

    @jhonny111s thanks for that, this will be resolved in a major content update

  • Posts: 5

    Hi guys,
    the hidden character is still there when copying the content directly from the course material:

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training