Widnows 8 Konsumsi Web Service–HttpClient

Pada bagian ini akan kita lihat bagaimana menggunakan HttpClient untuk mengonsumsi sebuah resource dari internet. Resource yang akan kita gunakan adalah resource yang sama pada latihan sebelumnya.

1. Modifikasi XAML menjadi seperti berikut ini :

<StackPanel Grid.Row=”1″ Margin=”120,30,0,0″ >

<Button Click=”Button_Click_1″>Call</Button>

<TextBlock x:Name=”outputText” Style=”{StaticResource HeaderTextStyle}”/>

<Button Click=”Button_Click_2″>Call HttpClient</Button>

<TextBlock x:Name=”outputText2″ Style=”{StaticResource HeaderTextStyle}”/>

</StackPanel>

2. Tambahkan event handler Button_Click_2 pada berkas WebService1.xaml.cs

private async void Button_Click_2(object sender, RoutedEventArgs e)

{

HttpClient client = new HttpClient();

Uri uri = new Uri(“http://localhost:23671/WebService1.asmx/HelloWorld&#8221;);

HttpResponseMessage response = await client.PostAsync(uri, null);

outputText2.Text = await response.Content.ReadAsStringAsync();

}

Untuk mengakses fungsi HelloWorld, kita menggunakan HTTP POST dengan memanggil fungsi PostAsync dan memperoleh hasilnya dengan fungsi ReadAsStringAsync();

3. Tekan F5 untuk melihat hasilnya. Klik Button HttpClient dan aplikasi akan menampilkan kembalian dari fungsi HelloWorld dalam format xml.

image

Kelas HttpClient memiliki berbagai fungsi yang dapat kita gunakan sesuai dengan jenis operasi Http yang ingin kita lakukan. Misalnya jika ingin melakukan Http Get , kita dapat menggunakan GetAsync atau jika kita sudah percaya diri bahwa nilai kembalian dari layanan web adalah string kita dapat menggunakan fungsi GetStringAsync . Terdapat juga fungsi untuk operasi Http Put dan Http Delete.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s