Content-Length: 13763 | pFad | https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/oauthclient-php/+/master

master - mediawiki/oauthclient-php - Gitiles
build: Updating phpunit/phpunit to 9.6.21

Change-Id: I426b6ef6fb11b5052fd90458a0acd3d3f70b8494
1 file changed
tree: cd0fde3788b700bcfeadd0c56c501089a7ddb8b0
  1. demo/
  2. src/
  3. tests/
  4. .gitattributes
  5. .gitignore
  6. .gitreview
  7. .phpcs.xml
  8. CHANGELOG.md
  9. composer.json
  10. COPYING
  11. Doxyfile
  12. phpunit.xml.dist
  13. README.md
README.md

Latest Stable Version License

mediawiki/oauthclient

PHP OAuth client for use with Wikipedia and other MediaWiki-based wikis running the OAuth extension.

Installation

$ composer require mediawiki/oauthclient

Usage

For working example code, see the demo directory.

General usage is as follows:

  1. Create a new Client with consumer key that you've registered with the wiki. Setting an user agent is highly encouraged.

    $conf = new ClientConfig( 'https://example.org/w/index.php?title=Special:OAuth' );
    $conf->setConsumer( new Consumer(
        'e331e186b64a938591e7614170814a75',
        '9b61abdfa2b88f05670af3919302b12bbc6a6e10'
    ) );
    $conf->setUserAgent( 'MyCoolApp MediaWikiOAuthClient/1.0' );
    $client = new Client( $conf );
    
  2. Retrieve the authentication URL and the Request Token:

    list( $authUrl, $requestToken ) = $client->initiate();
    
  3. Store the Request Token somewhere and send the user to the authentication URL.

  4. When the user comes back from the wiki they'll arrive at your callback URL, and the query string will contain an oauth_verifier key. Use this to retrieve an Acccess Token:

    $accessToken = $client->complete( $requestToken,  $_GET['oauth_verifier'] );
    
  5. Once you've got an Access Token you can store it and use it to make authenticated requests to the wiki.

    To get the user's identity:

    $ident = $client->identify( $accessToken );
    

    To make any API call:

    $userInfo = $client->makeOAuthCall(
         $accessToken,
         "https://example.org/w/api.php?action=query&meta=userinfo&uiprop=rights&format=json"
    );
    

Running tests

composer install --prefer-dist
composer test

History

The code is a refactored version of Stype/mwoauth-php, which in turn is partially based on Andy Smith's OAuth library. Some code is taken from wikimedia/slimapp. See CHANGELOG.md for more details.










ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/oauthclient-php/+/master

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy