php curl请求的python版本

2024-10-01 00:20:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用python测试一个API,但我是python API的初学者,我根本不懂PHP,如何获得认证密钥的示例就是PHP。我发现的一切都不适合我,因为有错误或401请求。所以我想问我,有人能帮我把这个翻译成python请求吗

<?php

function getAccessToken(): String
{
    $authUrl = "https://allegro.pl.allegrosandbox.pl/auth/oauth/token?grant_type=client_credentials";
    $clientId = "...";
    $clientSecret = "...";

    $ch = curl_init($authUrl);

    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
    curl_setopt($ch, CURLOPT_USERNAME, $clientId);
    curl_setopt($ch, CURLOPT_PASSWORD, $clientSecret);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $tokenResult = curl_exec($ch);
    $resultCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

    if ($tokenResult === false || $resultCode !== 200) {
        exit ("Something went wrong");
    }

    $tokenObject = json_decode($tokenResult);

    return $tokenObject->access_token;
}

function main()
{
    echo "access_token = ", getAccessToken();
}

main();

Tags: tokenapifunctioncurlchplphpclientid
1条回答
网友
1楼 · 发布于 2024-10-01 00:20:47

Python易学易用。翻译如下:

import requests

def getAccessToken():
    authUrl = "https://allegro.pl.allegrosandbox.pl/auth/oauth/token?grant_type=client_credentials"
    clientId = "..."
    clientSecret = "..."

    tokenResult = requests.post(authUrl, auth=(clientId, clientSecret))
    resultCode = tokenResult.status_code


    if resultCode != 200:
        print("something went wrong")
        exit (1)

    tokenObject = tokenResult.json()

    return tokenObject['access_token']

def main():
    print("access_token = {}".format(getAccessToken()))

main()

让我知道它是否有效。如果有,请接受答案

相关问题 更多 >