Git Product home page Git Product logo

dcard-sdk's Introduction

dcard-sdk

Help you to access easily the internal and official HTTP Dcard api.

Latest Stable Version Total Downloads Latest Unstable Version License

Dcard HTTP API implementation

We implement the following API methods

The base url is https://www.dcard.tw/

Request url description HTTP method response format the method
/_api/me get account information GET json getMe
/_api/forums get forum lists GET json getForums
/_api/dcard get today "Dcard" GET json getDcard
/_api/notifications get your notifications GET json getNotification
/_api/posts/{post-id} get specified post contents GET json getPostContents
/_api/forums/posts?popular={true/false}&before={post-id} get specified forums's post lists GET json getPostLists
/_api/sessions To login the Dcard Account POST json dcardLogin
/_api/dcard/accept Invite friends POST json sendAccept
/logout logout from the Dcard GET json dcardLogout

If you have to call other api methods, please open issue and let me know your requirement

Usage

//dowloading the composer.phar firstly
curl -sS https://getcomposer.org/installer | php

//using composer.phar to install the dcard-sdk
php composer.phar require dcard/sdk

Sample code

require "vendor/autoload.php";
	
use Dcard\sdk\DcardSdk;
	
$dcard = new DcardSdk("your account", "your password");

//login

$response = $dcard -> dcardLogin();

//get me

$response = $dcard -> getMe();

//get forums

$response = $dcard -> getForums();

//get "dcard"

$response = $dcard -> getDcard();

//get your account notifications

$response = $dcard -> getNotification();

//get specified post

$response = $dcard -> getPostContents("your-post-id");

//invite friends

$response = $dcard -> sendAccept("your-first-message");

//get specified forum's post lists
/*
	@param(type: string) $ForumName: the forum English name.
	@param(type: string) $IsPopular: the post whether is popular in forum or not and the value is true or false. 
	@param(type: boolean) $IsBefore: the post whether is the first page or specified page.
	@param(type: string) $PostId: the $IsBefore set true and the specified post id will get specified page.
	the $IsBefore set false and the specified post id will get specified page.
*/

$response = $dcard -> getPostLists($ForumName, $IsPopular, $IsBefore, $PostId);

//Dcard logout

$response = $dcard -> dcardLogout();

Unit Testing

I use PHPUnit to test the package.

Here is the steps to test the package.

Step 1

clone the project in master branch.

Step 2

manually download the PHPUnit.phar.

Step 3

download the composer.phar.

Step 4

do php composer.phar install in project root folder.

Step 5

create the folder which name is report in project root folder.

Step 6

In DcardTest.php, replace the account and password on line 11 and 28.

Step 7

run testing: php phpunit.phar src/dcard/sdk/DcardTest.php --coverage-html report/

Here is the testing result.

Alt text

Change log

2016/08/13

  1. add invite friend 新增寄送邀請功能

Related project

Dcard-API is developed by Node.js: Dcard-API

dcard-sdk's People

Contributors

peter279k avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

denazebiz

dcard-sdk's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.