Skip to content

Instantly share code, notes, and snippets.

@Amimul100
Created July 2, 2014 07:13
Show Gist options
  • Save Amimul100/9273ce5ec1e472b11f35 to your computer and use it in GitHub Desktop.
Save Amimul100/9273ce5ec1e472b11f35 to your computer and use it in GitHub Desktop.
HTTPClient request with Authorization header
/*
Hi, I have tested this issue in Ti SDK 3.3.0.RC. It’s working good.
Testing Environment:
Titanium SDK: 3.3.0.RC, 3.2.3.GA
Titanium CLI: 3.2.3
Android emulator
Appcelerator Studio, build: 3.3.0.201406271159
Step to Reproduce
Create a sample Ti Classic project from AppC Studio
Update app.js file with test code
Run on Android device or emulator
click on label1 to send request
*/
// this sets the background color of the master UIView (when there are no windows/tab groups on it)
Titanium.UI.setBackgroundColor('#000');
// create tab group
var tabGroup = Titanium.UI.createTabGroup();
//
// create base UI tab and root window
//
var win1 = Titanium.UI.createWindow({
title:'Tab 1',
backgroundColor:'#fff'
});
var tab1 = Titanium.UI.createTab({
icon:'KS_nav_views.png',
title:'Tab 1',
window:win1
});
var label1 = Titanium.UI.createLabel({
color:'#999',
text:'I am Window 1',
font:{fontSize:20,fontFamily:'Helvetica Neue'},
textAlign:'center',
width:'auto'
});
win1.add(label1);
label1.addEventListener('click', function(e)
{
function request(data) {
var httpClient = Ti.Network.createHTTPClient({
onload: function() {
Ti.API.info( 'SUCCESS --- ' + this.status + '\n\t' + this.responseText );
},
onerror: function() {
Ti.API.info( 'ERROR --- ' + this.status + '\n\t' + this.responseText );
}
});
httpClient.open('GET', 'http://api-minh.rhcloud.com/'); // This API simply echo all Headers being passed.
// Add Basic Authentication Header
var h = Titanium.Utils.base64encode(data.email + ':' + data.token).toString();
h = h.replace(/[\r\n]+/, '');
httpClient.setRequestHeader('Authorization', 'Basic ' + h);
httpClient.setRequestHeader('Content-Type', 'application/json');
// Send
httpClient.send();
}
request({ email: 'verylonglonglong.name@gmail.com', token: '6557e9dd2d747321ecc65' });
});
//
// create controls tab and root window
//
var win2 = Titanium.UI.createWindow({
title:'Tab 2',
backgroundColor:'#fff'
});
var tab2 = Titanium.UI.createTab({
icon:'KS_nav_ui.png',
title:'Tab 2',
window:win2
});
var label2 = Titanium.UI.createLabel({
color:'#999',
text:'I am Window 2',
font:{fontSize:20,fontFamily:'Helvetica Neue'},
textAlign:'center',
width:'auto'
});
win2.add(label2);
//
// add tabs
//
tabGroup.addTab(tab1);
tabGroup.addTab(tab2);
// open tab group
tabGroup.open();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment