Skip to content

Maybe incorrect CORS policy on api.roadmap.sh affecting local roadmap deployments #9512

@Dev-will-work

Description

@Dev-will-work

Possibly related issue: #9493

What is the URL where the issue is happening

http://localhost:3000 (or api.roadmap.sh)

What browsers are you seeing the problem on?

Microsoft Edge

Operating System

Windows 11 (pnpm running from Git Bash terminal)

Describe the Bug

I followed the Development instructions on my local laptop:
https://github.com/kamranahmedse/developer-roadmap?tab=readme-ov-file#development
Also attached the pnpm package version warnings.
but when I try to get interactive roadmap contents the load is hanging with console errors listed below.

pnpm logs

Image Image

$ pnpm dev

roadmap.sh@1.0.0 dev C:\Users\admin\Data\repositories\developer-roadmap
astro dev --port 3000

22:29:32 [@astrojs/node] Enabling sessions with filesystem storage
22:29:32 [types] Generated 1ms
22:29:32 [content] Syncing content
22:29:33 [content] Synced content

 astro  v5.16.6 ready in 648 ms

┃ Local    http://localhost:3000/
┃ Network  use --host to expose

22:29:33 watching for file changes...
22:30:10 [ERROR] fetch failed
  Stack trace:
    at node:internal/deps/undici/undici:15845:13
    at runNextTicks (node:internal/process/task_queues:68:3)
    at async httpCall (C:\Users\admin\Data\repositories\developer-roadmap\src\lib\query-http.ts:72:22)
    at async eval (C:\Users\admin\Data\repositories\developer-roadmap\src\pages\index.astro:16:18)
    [...] See full stack trace in the browser, or rerun with --verbose.
  Caused by:
  Connect Timeout Error (attempted address: api.roadmap.sh:443, timeout: 10000ms)
    at onConnectTimeout (node:internal/deps/undici/undici:1690:23)
    at process.processImmediate (node:internal/timers:504:21)
22:30:10 [ERROR] fetch failed
  Stack trace:
    at node:internal/deps/undici/undici:15845:13
    at async httpCall (C:\Users\admin\Data\repositories\developer-roadmap\src\lib\query-http.ts:72:22)
    at async eval (C:\Users\admin\Data\repositories\developer-roadmap\src\pages\[roadmapId]\index.astro:30:21)
    [...] See full stack trace in the browser, or rerun with --verbose.
  Caused by:
  Connect Timeout Error (attempted address: api.roadmap.sh:443, timeout: 10000ms)
    at onConnectTimeout (node:internal/deps/undici/undici:1690:23)
    at process.processImmediate (node:internal/timers:504:21)
22:30:12 [200] / 6308ms
22:30:24 [200] /pages.json 1484ms
22:30:25 [200] /frontend 791ms
22:30:29 [200] /pages.json 1922ms
22:35:49 [200] / 1468ms
22:35:53 [200] /pages.json 2058ms
22:35:56 [200] /frontend 765ms
22:35:59 [200] /pages.json 1518ms
22:36:07 [200] /login 31ms
22:36:10 [200] /pages.json 1751ms
22:36:23 [200] /login 27ms
22:36:26 [200] /pages.json 1913ms
22:36:30 [200] /roadmaps 48ms
22:36:32 [200] /frontend 745ms
Failed to fetch ranking
22:36:44 [200] /pages.json 2015ms

pnpm package lists

Image Image

$ pnpm outdated

WARN  Request took 11803ms: https://registry.npmjs.org/prismjs
 WARN  Request took 11950ms: https://registry.npmjs.org/dayjs
 WARN  Request took 11958ms: https://registry.npmjs.org/gray-matter
 WARN  Request took 11951ms: https://registry.npmjs.org/react-calendar-heatmap
 WARN  Request took 11974ms: https://registry.npmjs.org/dom-to-image
 WARN  40 other warnings
 WARN  47 other warningstry.npmjs.org/sanitize-html error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left
 WARN  50 other warnings
 WARN  GET https://registry.npmjs.org/shiki error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  56 other warningstry.npmjs.org/@types%2Fjs-cookie error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries
 left.
 WARN  92 other warningstry.npmjs.org/@types%2Fprismjs error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries l
eft.
 WARN  GET https://registry.npmjs.org/@types%2Freact-calendar-heatmap error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Freact-slick error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Fsanitize-html error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
┌───────────────────────────────────┬───────────────┬─────────┐
│ Package                           │ Current       │ Latest  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @ai-sdk/google (dev)              │ 1.2.22        │ 3.0.2   │
├───────────────────────────────────┼───────────────┼─────────┤
│ @fingerprintjs/fingerprintjs      │ 4.6.2         │ 5.0.1   │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/core                      │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/extension-document        │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/extension-paragraph       │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/extension-placeholder     │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/extension-text            │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/pm                        │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/react                     │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ @tiptap/suggestion                │ 2.27.1        │ 3.14.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ npm-check-updates                 │ 18.3.1        │ 19.2.1  │
├───────────────────────────────────┼───────────────┼─────────┤
│ openai (dev)                      │ 4.104.0       │ 6.15.0  │
├───────────────────────────────────┼───────────────┼─────────┤
│ react-resizable-panels            │ 3.0.6         │ 4.2.0   │
├───────────────────────────────────┼───────────────┼─────────┤
│ zod                               │ 3.25.76       │ 4.3.4   │
├───────────────────────────────────┼───────────────┼─────────┤
│ @ai-sdk/react                     │ 2.0.0-beta.34 │ 3.0.5   │
├───────────────────────────────────┼───────────────┼─────────┤
│ ai (dev)                          │ 5.0.0-beta.34 │ 6.0.5   │
├───────────────────────────────────┼───────────────┼─────────┤
 WARN  93 other warnings            │ 0.511.0       │ 0.562.0 │
├───────────────────────────────────┼───────────────┼─────────┤
│ prettier-plugin-tailwindcss (dev) │ 0.6.14        │ 0.7.2   │
├───────────────────────────────────┼───────────────┼─────────┤
│ satori                            │ 0.13.2        │ 0.18.3  │
├───────────────────────────────────┼───────────────┼─────────┤
│ tiptap-markdown                   │ 0.8.10        │ 0.9.0   │
└───────────────────────────────────┴───────────────┴─────────┘
Image $ pnpm up
 WARN  Request took 12110ms: https://registry.npmjs.org/@roadmapsh%2Fdummy-editor
 WARN  Request took 12165ms: https://registry.npmjs.org/gh-pages
 WARN  Request took 12222ms: https://registry.npmjs.org/@types%2Fjs-cookie
 WARN  Request took 12317ms: https://registry.npmjs.org/tailwind-scrollbar
 WARN  Request took 12350ms: https://registry.npmjs.org/@microsoft%2Fclarity
 WARN  85 other warnings
 WARN  GET https://registry.npmjs.org/radix-ui error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/react-calendar-heatmap error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/satori-html error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/prosemirror-schema-list error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@napi-rs%2Fwasm-runtime error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/enhanced-resolve error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/unist-util-stringify-position error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/postcss error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/style-to-js error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/string.prototype.codepointat error (ERR_SOCKET_TIMEOUT). Will retry in 10 seconds. 2 retries left.
 WARN  1 deprecated subdependencies found: node-domexception@1.0.0
Already up to date
Progress: resolved 878, reused 739, downloaded 0, added 0, done
Done in 1m 34.1s using pnpm v10.27.0

Error via UI

Image Image

Output from browser console (if any)

Image
Access to fetch at 'https://api.roadmap.sh/v1-list-roadmap-paid-resources/frontend'
from origin 'http://localhost:3000' has been blocked by CORS policy:
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

api.roadmap.sh/v1-list-roadmap-paid-resources/frontend:1   Failed to load resource: net::ERR_FAILED

TopicDetail.tsx:87 
Object
message: "Failed to fetch"
status: 0
[[Prototype]]: Object
fetchRoadmapPaidResources @ TopicDetail.tsx:87

Access to fetch at 'https://api.roadmap.sh/v1-official-roadmap/frontend-beginner'
from origin 'http://localhost:3000' has been blocked by CORS policy:
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

api.roadmap.sh/v1-official-roadmap/frontend-beginner:1   Failed to load resource: net::ERR_FAILED

EditorRoadmap.tsx:50  
Object
message: "Failed to fetch"
status: 0
[[Prototype]]: Object
loadRoadmapData @ EditorRoadmap.tsx:50

Failed to load resource: net::ERR_NAME_NOT_RESOLVED
api.roadmap.shundefined/frontend.json:1 

Participation

  • I am willing to submit a pull request for this issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugIndicates an unexpected problem or unintended behavior

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions