1

我想在.so 中创建wcf web service它,username以便通过提供该用户名和密码,我们可以使用任何 Web 方法。我已经创建了 wcf Web 服务,但我想在 Web 服务中添加用户名和密码。passwordasp.net

提前致谢。

4

1 回答 1

0

以下是实现您要求的所需步骤:

1) 使用 Visual Studio 的“新建项目”界面创建一个新的 WCF 项目:您最终会得到两个主要文件:Service1.svc(代码文件)和IService1.cs(界面文件)。

2) 打开IService1.cs文件并定义您的方法,如下所示:

[ServiceContract]
public interface IService1
{
    [...]

    // TODO: Add your service operations here

    [OperationContract]
    string GetToken(string userName, string password);
}

3)打开Service1.cs文件,添加方法的实现方式如下:

/// <summary>
/// Retrieve a non-permanent token to be used for any subsequent WS call.
/// </summary>
/// <param name="userName">a valid userName</param>
/// <param name="password">the corresponding password</param>
/// <returns>a GUID if authentication succeeds, or string.Empty if something goes wrong</returns>
public string GetToken(string userName, string password)
{
    // TODO: replace the following sample with an actual auth logic
    if (userName == "testUser" && password == "testPassword")
    {
        // Authentication Successful
        return Guid.NewGuid().ToString();
    }
    else
    {
        // Authentication Failed
        return string.Empty;
    }
}

基本上就是这样。您可以使用此技术检索(过期和安全)令牌以在任何后续调用中使用 - 这是最常见的行为 - 或在所有方法中实施该用户名/密码策略:这完全是您的调用。

要测试您的新服务,您可以在调试模式下启动您的 MVC 项目并使用内置的WCF 测试工具:您必须输入上面指定的示例值(testUsertestPassword),除非您更改它们。

有关此特定主题的更多信息和其他实施示例,您还可以阅读我博客上的这篇文章。

于 2017-10-20T23:25:42.350 回答