如何从用户json福彩12选5走势图中读取Google帐户的凭据

杰森·彭

知名会员
已加入
2019年8月13日
留言内容
46
编程经验
Beginner
如果要为其提供路径,则可以从json福彩12选5走势图中读取google凭据。我的问题是,如果希望每次运行我的应用程序时都可以加载Google Auth 2.0的登录页面,该怎么办?我尝试了几种方法,例如指定诸如
Google Auth 2.0的特殊路径:
 string savePath = Path.Combine(appDataSavePath , Path.GetFileName(clientSecretPath));
            if (System.IO.File.Exists(savePath))
            {
                try
                {
                    using (var stream = new FileStream(savePath, FileMode.Open, FileAccess.Read))
                    {
                        string  credPath = Path.Combine(appDataSavePath, ".credentials");

                        credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                            GoogleClientSecrets.Load(stream).Secrets,
                            Scopes,
                            "Drive-"+userName,
                            CancellationToken.None,
                            new FileDataStore(credPath, true)).Result;
                    }
                    return true;

                }
但是,由于消息已超过每日使用的验证限制,因此此操作无效。这是我现在拥有的,但是仅当我指定自己的json福彩12选5走势图路径时,它才适用于我自己的Google帐户。
Own Json path:
  public static DriveService GetService()
        {
            //get Credentials from client_secret.json file
            UserCredential credential;
            using (var stream = new FileStream(@"D:client_secret.json", FileMode.Open, FileAccess.Read))
            {
                String FolderPath = @"D:\";
                String FilePath = Path.Combine(FolderPath, "DriveServiceCredentials.json");

                credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                    GoogleClientSecrets.Load(stream).Secrets,
                    Scopes,
                    "user",
                    CancellationToken.None,
                    new FileDataStore(FilePath, true)).Result;
            }
            
            //create Drive API service.
            DriveService service = new DriveService(new BaseClientService.Initializer()
            {
                HttpClientInitializer = credential,
                ApplicationName = "GoogleDriveRestAPI-v3",
            });
            return service;
        }
 

跳伞

工作人员
已加入
2019年4月6日
留言内容
2,514
地点
弗吉尼亚州切萨皮克
编程经验
10+
对不起。我读了10次您的问题,但我不明白您的标题(关于如何从JSON福彩12选5走势图读取用户凭据)与您要描述的问题(超出了每天使用的身份验证限制)之间的关系。对我来说,问题是相互正交的。您是否成功读取了凭据。您是否尝试登录过多次。

无论如何,您可以通过以下方式正确读取凭据:
C#:
using (var stream = new FileStream(savePath, FileMode.Open, FileAccess.Read))
where savePath happens to be "D:client_secret.json" or the result of your verified file exists Path.Combine(appDataSavePath , Path.GetFileName(clientSecretPath)).

您可以尝试改写您的问题吗?
 
Last edited:

杰森·彭

知名会员
已加入
2019年8月13日
留言内容
46
编程经验
Beginner
好吧,也许我会尝试重新表述我的问题。截至目前,我的代码仅适用于我自己的路径,这意味着当我指定json福彩12选5走势图位于d路径中时,则当我启动该应用程序时,它将立即连接到我的Google驱动器。例如,
我自己的json福彩12选5走势图路径:
  using (var stream = new FileStream(@"D:client_secret.json", FileMode.Open, FileAccess.Read))
            {
                String FolderPath = @"D:\";
                String FilePath = Path.Combine(FolderPath, "DriveServiceCredentials.json");

                credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                    GoogleClientSecrets.Load(stream).Secrets,
                    Scopes,
                    "user",
                    CancellationToken.None,
                    new FileDataStore(FilePath, true)).Result;
            }
由于我已经指定了路径,因此它将从d驱动器中json福彩12选5走势图的我自己的路径运行。我的问题是我该如何做到这一点,而不是我需要指定路径,而是从用户路径获取json福彩12选5走势图并运行它。意味着无需我指定路径,该程序将获取该用户的json福彩12选5走势图的用户凭据,并将弹出Google Auth 2.0页面,以便用户可以选择其Google帐户,而不是立即自动直接链接到我的帐户作为指定到我的json福彩12选5走势图的路径。
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,512
地点
悉尼,澳大利亚
编程经验
10+
你到底是什么意思"the user path"?您是指用户通过您的应用选择的路径,还是当前Windows用户的配置福彩12选5走势图福彩12选5走势图夹下的标准相对路径或其他?
 

杰森·彭

知名会员
已加入
2019年8月13日
留言内容
46
编程经验
Beginner
例如,这里的代码
C#:
 using (var stream = new FileStream(@"D:client_secret.json", FileMode.Open, FileAccess.Read))
            {
                String FolderPath = @"D:\";
                String FilePath = Path.Combine(FolderPath, "DriveServiceCredentials.json");

指定位于我的计算机上的json福彩12选5走势图的路径。因此,当我运行该应用程序时,它将立即将我重定向到我的Google帐户。我的问题是如何代替设置我已经知道json凭证福彩12选5走势图位置的路径,而是可以检索用户凭证json福彩12选5走势图。因此,每当google auth 2.0出现时,它都会从用户那里获取json福彩12选5走势图的路径,而不是像静态路径。到目前为止,我已经尝试过了
C#:
  using (var stream = new FileStream("Secret.json", FileMode.Open, FileAccess.Read))
            {
                string credPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
                credPath = Path.Combine(credPath, ".credentials/Secret_Credentials.json");
它说
System.IO.FileNotFoundException
HResult=0x80070002
消息=找不到福彩12选5走势图'C:\ Program Files(x86)\ IIS Express \ Secret.json'。
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,512
地点
悉尼,澳大利亚
编程经验
10+
如果要用户指定路径,则提示用户输入路径。路径是什么都没有关系。无论从用户那里获取福彩12选5走势图路径都是相同的,因此查找有关如何执行操作的信息很容易。有了路径后,您可以将其存储在适当的位置,然后使用它而无需每次都提示。
 
最佳 底部