Quando você acessa o GitHub, em Problemas, ele exibe todos os problemas abertos como uma página HTML. Gostaríamos de implementar um painel mostrando todos os problemas em um repositório, agrupados por rótulos, incluindo aqueles que não estão corretamente rotulados.
Esta é a API de lista de problemas-para-um-repositório correspondente .
Enquanto eu estava inicialmente usando jQuery e Javascript, agora estou usando o PHP como prova de conceito, porque seu tratamento de sessão interno me permite usar a mesma página para efetuar login, autenticar e retornar o GitHub e continuar. Mas isso não importa para mim, qualquer idioma está bem.
Eu consegui acessar a API do GitHub via OAUTH2, mas quando recebo a lista de repositórios via https://api.github.com/orgs/{org}/repos
ela aparece como uma matriz vazia.
Como a /orgs/{org}/repos
API retorna uma matriz vazia, é claro que a /repos/{org}/{repo}/issues
API correspondente retornará um erro.
Edit : Veja este acompanhamento para uma solução! Ainda bem que finalmente consegui!
fonte
{ "message": "Not Found", "documentation_url": "https://developer.github.com/v3/issues/#list-issues-for-a-repository" }
, mas eu li e essa parece ser a resposta padrão ao tentar acessar repositórios particulares, pesquisando sobre OAuth etc. FWIW, usando JavaScript na estrutura do jQuery.Você pode usar o jQuery Ajax para acessar a API do Github e adicionar um cabeçalho de autenticação básico para autenticação (veja aqui ); um exemplo é mostrado abaixo; isso resolverá os problemas de um determinado repositório e mostrará os 10 primeiros em uma janela de alerta.
Consulte a documentação sobre problemas de extração aqui: https://developer.github.com/v3/issues/ para ver quais parâmetros você pode usar para filtrar, classificar etc.
Por exemplo, você pode obter todos os problemas rotulados como 'bug' usando:
Isso pode incluir vários rótulos, por exemplo
Você pode modificar facilmente para listar em uma tabela etc.
Abaixo está um trecho da lista de problemas para um repo (público) usando jQuery e a API do Github:
(Observe que não adicionamos um cabeçalho de autenticação aqui!)
fonte
https://api.github.com/authorizations
indicou que poderia ser acessada somente com autorização básica:stdClass Object ( [message] => This API can only be accessed with username and password Basic Auth [documentation_url] => https://developer.github.com/v3 )
. Então, talvez isso funcione.