skiptoken for large request responses
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 38/100
Direção de pesquisa
Comece com device_request_builder.py e a classe DevicesRequestBuilderGetQueryParameters e, em seguida, compare a requisição gerada com data_data_next_link da resposta de dispositivos. Verifique como skiptoken é representado na URL da requisição e se o caminho existente de GetQueryParameters pode segui-lo. Considera-se concluído quando a paginação de dispositivos puder usar o next link ou skiptoken retornado sem o erro de construtor relatado.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I am looking to use the msgraph sdk for python. I want to get a list of devices in our tenant. We have thousands of devices. When using the msgraph.devices.get(), it will return 100 devices (the default limit for msgraph). Utilize the request_query=DevicesRequestBuilder.DevicesRequestBuilderGetQueryParameters(top=100,skip=100)
gives me this error msgraph.generated.models.o_data_errors.o_data_error.ODataError
After some digging in the Microsoft graph explorer for https://graph.microsoft.com/v1.0/devices?$top=100&$skip=100 gives this error
{
"error": {
"code": "Request_BadRequest",
"message": "'$skip' is not supported by the service.",
"innerError": {
"date": "2023-04-24T23:08:17",
"request-id": "e077ef6b-d848-4fba-8cce-257e7188a6ec",
"client-request-id": "4a9beda2-c3ee-0c9f-f012-5308f25f8954"
}
}
}
So, skip is not supported for devices. It is the same in the beta requests.
Since I am able to get the data_data_next_link from my initial devices.get() response, I tried
request_query=DevicesRequestBuilder.DevicesRequestBuilderGetQueryParameters(top=100,skiptoken='RNFw.....')
However, I get an error TypeError: __init__() got an unexpected keyword argument skiptoken
After digging through the code, I modified device_request_builder.py, changing the DevicesRequestBuilderGetQueryParameters(): adding
if original_name == "skiptoken":
return "%24skiptoken
......
skiptoken: Optional[str] = None
and class DevicesRequestBuilder(): modifying
self.url_template: str = "{+baseurl}/devices{?%24top,%24skip,%24search,%24filter,%24count,%24orderby,%24select,%24expand,%24skiptoken}
These make the skiptoken available and work with GetQueryParameters.
So basically modifying this module to work with the limitations of msgraph
Is there another way to accomplish paging with devices in this python module?
If not, I can try a pull request for this.
- Linguagem predominante
- Python
- Estrelas
- 630
- Forks
- 96
- Merge médio
- 15h 20min
- PRs com merge (30d)
- 3
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de microsoftgraph/msgraph-sdk-python
-
status:waiting-for-triage type:bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
microsoftgraph/msgraph-sdk-python#1570 ·
-
status:waiting-for-triage type:bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
microsoftgraph/msgraph-sdk-python#1563 ·
-
Needs: Attention :wave: type:bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
microsoftgraph/msgraph-sdk-python#1287 · 2 comentários · 1 reação ·
-
status:waiting-for-triage type:bug
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 52/100
microsoftgraph/msgraph-sdk-python#1578 ·
-
Batch Request Support Abertastatus:waiting-for-triage
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
microsoftgraph/msgraph-sdk-python#1557 ·
Todas as issues de microsoftgraph/msgraph-sdk-python
Issues semelhantes
-
enhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
canonical/paas-charm#368 · 1 comentário ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
tech debt
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
addition to tracking list Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
StevenBlack/hosts#3256 ·
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
qualcomm/qai-appbuilder#275 ·