microsoftgraph / microsoftgraph/msgraph-sdk-python

Getting Only https scheme with a valid host are supported when calling sites.with_url().get()

Aperta
#362 2 commenti 2 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

question
Lingua principale
Python
Stelle
630
Fork
96
Merge medio
15h 20m
PR unite (30g)
3

Descrizione

Reporting an Issue or Missing Feature

When attempting to get a SharePoint site a Kiota authentication error is thrown.

Expected behavior

A site object should be returned.

Actual behavior

The following error is thrown:

kiota_authentication_azure._exceptions.HTTPError: Only https scheme with a valid host are supported
Steps to reproduce behavior
import asyncio
from azure.identity.aio import ClientSecretCredential
from kiota_abstractions.api_error import APIError
from msgraph import GraphServiceClient

#############################################################################################################
#Declare Variables
#############################################################################################################

client_id = ""

client_secret = ""

scopes = ['https://graph.microsoft.com/.default']

tenant_id = ""

#############################################################################################################
#Build Microsoft Graph Client
#############################################################################################################

credentials = ClientSecretCredential(
    client_id = client_id,
    client_secret = client_secret,
    tenant_id = tenant_id,
)

client = GraphServiceClient(
    credentials = credentials,
    scopes = scopes,
)

#############################################################################################################
#Get SharePoint Site
#############################################################################################################

async def get_site():
    try:
        site = await client.sites.with_url('/sites/example').get()
        if site:
            print(site)
    except APIError as api_error:
        print(f'Error: {api_error.error.message}')

asyncio.run(get_site())
Versions
Python 3.10.11
Package                              Version
------------------------------------ ---------
aiohttp                              3.8.5
aiosignal                            1.3.1
anyio                                4.0.0
async-timeout                        4.0.3
attrs                                23.1.0
azure-core                           1.29.4
azure-identity                       1.14.0
certifi                              2023.7.22
cffi                                 1.15.1
charset-normalizer                   3.2.0
cryptography                         41.0.4
Deprecated                           1.2.14
exceptiongroup                       1.1.3
frozenlist                           1.4.0
h11                                  0.14.0
h2                                   4.1.0
hpack                                4.0.0
httpcore                             0.18.0
httpx                                0.25.0
hyperframe                           6.0.1
idna                                 3.4
importlib-metadata                   6.8.0
microsoft-kiota-abstractions         0.8.6
microsoft-kiota-authentication-azure 0.3.0
microsoft-kiota-http                 0.6.1
microsoft-kiota-serialization-json   0.4.0
microsoft-kiota-serialization-text   0.2.1
msal                                 1.24.0
msal-extensions                      1.0.0
msgraph-core                         1.0.0a4
msgraph-sdk                          1.0.0a16
multidict                            6.0.4
opentelemetry-api                    1.20.0
opentelemetry-sdk                    1.20.0
opentelemetry-semantic-conventions   0.41b0
pip                                  23.2.1
portalocker                          2.8.2
pycparser                            2.21
PyJWT                                2.8.0
python-dateutil                      2.8.2
pywin32                              306
requests                             2.31.0
setuptools                           65.5.0
six                                  1.16.0
sniffio                              1.3.0
std-uritemplate                      0.0.42
typing_extensions                    4.8.0
urllib3                              2.0.5
wrapt                                1.15.0
yarl                                 1.9.2
zipp                                 3.17.0
Operating system/environment?
  • Windows
  • Linux
  • MacOS
  • Azure Cloud Shell
  • Azure Functions
  • Other : please specify

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia con la riproduzione segnalata di get_site(), in particolare client.sites.with_url('/sites/example').get(), e traccia il modo in cui quell'URL relativa viene passata attraverso il client Graph e il flusso di autenticazione. Confronta le forme di URL accettate e aggiungi o aggiorna la copertura in modo che una richiesta valida di un sito SharePoint restituisca un oggetto site o produca un errore appropriato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
azure, python
Ambito
api
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.