Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Can not parse request

Aperta
#787 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

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

Direzione di ricerca

Inizia con la chiamata riprodotta a ComputeClient.launch_instance e la costruzione del modello LaunchInstanceDetails, quindi abilita la registrazione delle richieste dell’SDK e confronta la richiesta serializzata con la documentazione collegata dell’API OCI LaunchInstance. Riduci il payload per identificare quale campo causa CannotParseRequest; il lavoro è completato quando l’esempio viene avviato correttamente senza l’errore 400.

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

Descrizione

SDK
import oci

config = oci.config.from_file()
compute_client = oci.core.ComputeClient(config)

compartment_id = "ocid1.compartment.oc1..xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

launch_details = oci.core.models.LaunchInstanceDetails(
    availability_domain="EU-FRANKFURT-1-AD-3",
    compartment_id=compartment_id,
    shape="VM.Standard.A1.Flex",
    display_name="Server",
    source_details=oci.core.models.InstanceSourceViaImageDetails(
        source_type="image",
        image_id="ocid1.image.oc1.eu-frankfurt-1.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    ),
    create_vnic_details=oci.core.models.CreateVnicDetails(
        subnet_id="ocid1.subnet.oc1.eu-frankfurt-1.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        assign_public_ip=True,
        assign_private_dns_record=True
    ),
    shape_config=oci.core.models.LaunchInstanceShapeConfigDetails(
        memory_in_gbs=24,
        ocpus=4
    ),
    metadata={
        "ssh_authorized_keys": open(r"/path/to/ssh-key.pub").read().strip()
    },
    agent_config=oci.core.models.LaunchInstanceAgentConfigDetails(
        is_management_disabled=False,
        is_monitoring_disabled=False,
        plugins_config=[
            {"name": "Vulnerability Scanning", "desired_state": "DISABLED"},
            {"name": "Management Agent", "desired_state": "DISABLED"},
            {"name": "Custom Logs Monitoring", "desired_state": "ENABLED"},
            {"name": "Compute RDMA GPU Monitoring", "desired_state": "DISABLED"},
            {"name": "Compute Instance Monitoring", "desired_state": "ENABLED"},
            {"name": "Compute HPC RDMA Auto-Configuration", "desired_state": "DISABLED"},
            {"name": "Compute HPC RDMA Authentication", "desired_state": "DISABLED"},
            {"name": "Cloud Guard Workload Protection", "desired_state": "ENABLED"},
            {"name": "Block Volume Management", "desired_state": "DISABLED"},
            {"name": "Bastion", "desired_state": "DISABLED"}
        ]
    ),
    instance_options=oci.core.models.InstanceOptions(
        are_legacy_imds_endpoints_disabled=False
    ),
    availability_config=oci.core.models.LaunchInstanceAvailabilityConfigDetails(
        recovery_action="RESTORE_INSTANCE"
    )
)

response = compute_client.launch_instance(launch_details)
print("Launch initiated. Instance ID:", response.data.id)

oci.wait_until(
    compute_client,
    compute_client.get_instance(response.data.id),
    'lifecycle_state',
    'RUNNING',
    max_wait_seconds=600
)
print("Instance is now RUNNING")
input()
oci.exceptions.ServiceError: {
    'target_service': 'compute',
    'status': 400,
    'code': 'CannotParseRequest',
    'opc-request-id': 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
    'message': 'Incorrectly formatted request. Please refer to our documentation for help.',
    'operation_name': 'launch_instance',
    'timestamp': '2025-08-13T15:29:34.585459+00:00',
    'client_version': 'Oracle-PythonSDK/2.157.1',
    'request_endpoint': 'POST https://iaas.eu-frankfurt-1.oraclecloud.com/20160918/instances',
    'logging_tips': 'Refer to https://docs.oracle.com/en-us/iaas/tools/python/latest/logging.html for ways to log request/response details.',
    'troubleshooting_tips': 'See https://docs.oracle.com/iaas/Content/API/References/apierrors.htm#apierrors_400__400_cannotparserequest and https://docs.oracle.com/iaas/api/#/en/iaas/20160918/Instance/LaunchInstance for more info.'
}
Lingua principale
Python
Stelle
474
Fork
321
Merge medio
23m
PR unite (30g)
4

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.

Altre issue di oracle/oci-python-sdk

Tutte le issue di oracle/oci-python-sdk

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.