您好我正在编写一个代码来访问我在C#中的电子邮件,并且能够获得示例代码来帮助我,但现在我正在努力。我想知道如何修改源代码,以便在其中嵌入我的用户名和密码。目前运行代码时,gmail需要我的同意。我不希望这样,我希望源代码具有登录凭据..任何形式的帮助都表示赞赏。
public sealed partial class MainPage : Page
{
private UserCredential _credential;
const string AppName = "LargeMail";
public MainPage()
{
this.InitializeComponent();
GetCredential();
}
public async Task<UserCredential> GetCredential()
{
var scopes = new[] { GmailService.Scope.GmailModify };
var uri = new Uri("ms-appx:///client_id.json");
_credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
uri, scopes, "user", CancellationToken.None);
return _credential;
}
private void GetMessagesClick(object sender, RoutedEventArgs e)
{
var service = new GmailService(new BaseClientService.Initializer()
{
HttpClientInitializer = _credential,
ApplicationName = AppName,
});
UsersResource.MessagesResource.ListRequest request = service.Users.Messages.List("me");
request.MaxResults = 4;
var messsages = request.Execute().Messages;
MessagesList.ItemsSource = messsages;
}
}
答案 0 :(得分:2)
硬编码,如用户名,密码和其他敏感信息并不是一个可怕的想法,它完全是 INSECURE 。用户需要做的就是反编译您的应用程序,并且他们拥有访问您帐户所需的凭据。
您真正需要做的是查看Googles Authentication API
在开发人员系统注册后,您可以生成一个授权令牌,允许您的应用程序访问GMail API。首次使用时,它会要求您确认您的用户名和密码,但接下来您不应该重复该步骤。