Howto: PHP login

Added by Henning over 8 years ago

Hello

I've been struggling to "translate" to code example into PHP and I've finally done it.

I haven't done anything to make it "pretty" or whatever, this is just an example showing how to login using PHP.
Here goes...

<?php

// This function could be more dynamic, but it works great when you want to login
function api_call($url, $data)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, true);

    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

    $result = curl_exec($ch);
    curl_close($ch);

    return simplexml_load_string($result);
}

// Init variables
$username        = 'YOUR_USERNAME';
$password        = 'YOUR_PASSWORD';
$service        = 'NEXTAPI';
$base_url        = 'api.test.nordnet.se/next';
$api_version    = '1';

// Documentation: https://api.test.nordnet.se/projects/api/wiki/REST_API_documentation#Login

// Step 1: First Base64-encode the username, password and timestamp (UNIX timestamp in milliseconds) and combine them with the character ‘:’.
$login_string = base64_encode($username) . ':' . base64_encode($password) . ':' . base64_encode(microtime());

// Step 2: Use the public key for the application and encrypt the string.

// Loads the public key - available at: https://api.test.nordnet.se/projects/api/files | Note (use the .pem file)
$public_key = openssl_get_publickey(file_get_contents('publickey.pem'));
// This part encrypts our login string with the public key and return the encrypted string to the $login variable
$rsa_encrypt = openssl_public_encrypt($login_string, $login, $public_key);

// Step 3: Base64 encode the encrypted string.
$auth = base64_encode($login);

// Now we wrap up our fields in array
$fields = array(
    'auth'    => $auth,
    'service' => $service
);

// We then build a URL-encoded query string
$post_data = http_build_query($fields);

// Finally we post our login to https://BASE_URL/API_VERSION/login
$login_result = api_call('https://'.$base_url.'/'.$api_version.'/login', $post_data);

// This prints out our result
print_r($login_result);

?>

Done.


Replies (2)

RE: Howto: PHP login - Added by sunh 14 days ago

먹튀검증 의 메카는 먹튀보안관입니다 먹튀검증, 스포츠중계꽁머니 안내를 대표로하며, 안전놀이터 가 아닌 먹튀로 인해 피해를 보신 보든 분들이 더 이상 피해를 보지 않게 하기 위해 시작하게 되었습니다 토토사이트 와가장 멋진 먹튀검증사이트. 저는 당신의 메이저안전놀이터 관한 내용에 감탄을 멈추지 못하겠습니다. 메이저토토사이트 최고입니다. 다양한 안전놀이터 정보 안전한 꽁머니 많은 정보와 함꼐하는 먹튀가디언이였습니다.그리고 안전놀이터 함께 저희 사이트는토토사이트 같은 정보도 가지고 있습니다. 저희 사이트에도 많은 관심 부탁드립니다. 이상 먹튀검증 이였습니다.

RE: Howto: PHP login - Added by sunh 14 days ago

가장확실한먹튀검증커뮤니티 .comThat's a very good story! 먹튀검증 I read your article very deeply. 먹튀신고 Hello, 먹튀 my name is 먹튀검증업체 and I run a site similar to yours. 먹튀커뮤니티 Compared to you, 먹튀사이트검증 the site I run is not enough. 먹튀사이트 However,메이저놀이터 I am also working hard 메이저안전놀이터추천 to upload more than 2 posts a week.메이저놀이터추천 If you are interested, 메이저놀이터 please visit my website. 사설토토 I would appreciate 메이저사설토토 it if you could visit 사설토토사이트추천 and read my article 사설토토사이트 and leave your comments.사설놀이터 It will be of 안전놀이터 great help to me. 토토안전놀이터 Anyway, 안전놀이터 have a nice day 토토사이트 today and thank you for 토토추천 your hard work.메이저토토사이트 Thank you, 먹튀없는토토사이트 Have a nice day! 토토사이트추천 bye토토사이트

(1-2/2)