Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

328
Views
Obteniendo el error 401 no autorizado al solicitar la API de GitHub

Buenas noches. Mi tarea es crear un sitio web con reacción que listará a través de los usuarios de github. Estaba siguiendo esta instrucción: https://docs.github.com/en/rest/users/users#get-a-user (para JS). Mis credenciales:

 async function searchUsers() { try { const octokit = new Octokit({ auth: 'ghp_MY_PERSONAL_TOKEN', acceptstring: 'application/vnd.github.v3+json' }) const response = await octokit.request(`GET /users/${name}`, { username: 'maria98kgm' }); setUsers(response.data); setLoading(false); searchRepos(); } catch(e) { setLoading(false); setUsers('notFound'); console.error('no such a user'); } }

Cada vez que lo uso demasiado tiempo o envío cambios a github, deja de funcionar y me da un error 401 Unauthorized : ingrese la descripción de la imagen aquí

No puedo resolverlo desde hace dos días, por favor ayuda.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Explicación del error.

El código de estado 404 significa que sus datos de autenticación no son los buenos.

Cómo resolverlo.

  • Primero, verifique que su token personal de GitHub esté bien (supongo que lo está)
  • En segundo lugar, haga lo siguiente: https://docs.github.com/en/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps
about 4 years ago · Juan Pablo Isaza Report

0

No necesita ninguna autenticación para ese punto final. Aquí hay un ejemplo de trabajo:

  • Octokit.js documentos
  • Documentos de API REST de GitHub para obtener un usuario

 body { font-family: sans-serif; } button, input[type="text"] { font-size: 1rem; padding: 0.2rem; } pre { font-family: monospace; font-size: 1rem; } .vertical { display: flex; flex-direction: column; align-items: flex-start; gap: 0.5rem; }
 <!-- Babel seemed to have trouble with this, so I'm putting it on window --> <script type="module"> import {Octokit} from 'https://cdn.skypack.dev/octokit@1.7.1'; window.Octokit = Octokit; </script> <div id="root"></div><script src="https://unpkg.com/react@18.1.0/umd/react.development.js"></script><script src="https://unpkg.com/react-dom@18.1.0/umd/react-dom.development.js"></script><script src="https://unpkg.com/@babel/standalone@7.18.1/babel.min.js"></script> <script type="text/babel" data-type="module" data-presets="env,react"> // import * as ReactDOM from 'react-dom/client'; // import {useState} from 'react'; // import {Octokit} from 'octokit'; // This Stack Overflow snippet demo uses UMD modules instead of the commented import statments above const {useState} = React; const octokit = new Octokit(); function App () { const [user, setUser] = useState('maria98kgm'); const [userData, setUserData] = useState(undefined); const [error, setError] = useState(undefined); const updateUserData = async () => { try { const username = user.trim(); const response = await octokit.request(`GET /users/${username}`); setUserData(response.data); setError(undefined); } catch (ex) { if (ex instanceof Error) setError(ex); else console.error(ex); } }; const displayString = error ? error.toString() : userData ? JSON.stringify(userData, null, 2) : 'No data yet'; return ( <div> <div className="vertical"> <input type="text" onChange={ev => setUser(ev.target.value)} value={user} /> <button onClick={updateUserData}>Update user data</button> </div> <pre><code>{displayString}</code></pre> </div> ); } const reactRoot = ReactDOM.createRoot(document.getElementById('root')); reactRoot.render(<App />); </script>

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!