2012-07-17 20 views
-8

我正在开发使用C#的metroapp,并且从我的应用程序调用Web服务时需要用户名和密码才能访问它(我有)所以,任何人都可以解释我进行基本身份验证以进行网络服务调用。任何带有示例的链接或文章都是可观的。 在此先感谢。使用C的地铁应用程序中的基本身份验证#

+3

你试图结合什么,它与thingamajig。 (尽管......没有足够的信息来提供任何明智的答案)。 – 2012-07-17 13:05:20

+0

Dude - 基本认证是网络的基础。你真的应该可以自己做一些非常“基本”的研究。 – 2012-07-17 13:08:03

+1

考虑阅读有关基本内容([this](http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest(v = vs.95).aspx))可能是一个很好的起点)。 – fragmentedreality 2012-07-17 13:11:32

回答

4

我假设你正在谈论基本Http身份验证,如果您使用HttpClient进行Web服务调用,那么您可以使用以下代码启用设置基本身份验证标头。

var request = new HttpRequestMessage(HttpMethod.Get, uri); 
var token = Convert.ToBase64String(Encoding.UTF8.GetBytes(String.Format("{0}:{1}", username, password))); 

request.Headers.Authorization = new AuthenticationHeaderValue("Basic", token); 

最简单的(和最干净)的方式,但是:

var handler = new HttpClientHandler { 
    Credentials = new NetworkCredential(username, password) 
}; 

var httpClient = new HttpClient(handler); 

var response = await httpClient.GetAsync(uriString); 
+0

谢谢Nigel Sampson – 2012-07-18 07:27:57

2

我假设你指的是OAuth,而Metro中的实现实际上并不像Web认证WinRT API那样困难 - 但作为对你的问题评论的开发者,你应该如果这个话题对你来说是新的,那么你可以阅读。 Maybe start here, look at the documentation.

Pluralsight在WinRT上有许多很棒的视频和Web认证主题。 看看Windows 8的下 - > Windows 8的地铁联络应用程序 - >访问HTTP服务 - > WebAuthBroker direct link here

As for an example app, you can find one here.

And here is an article fromj MSDN

祝你好运!

+0

谢谢lris Classon – 2012-07-18 07:27:34

相关问题