Windows Phone 8 应用程序的用户名和密码数据

2023-12-02

我正在编写一个 Windows Phone 8 应用程序,该应用程序使用 API 来提取该应用程序需要的一些数据,并且要使用该 api,需要用户名和密码。我已获得此用户名和密码,它似乎可以工作,但是我想知道在应用程序中使用此用户名和密码的正确方法是什么?

我可以简单地添加如下内容吗:

string userName = "username";
string passWord = "password";

然后将它们传递到WebRequest需要的时候?或者我应该通过某种特殊方式将此信息存储在应用程序中?

需要明确的是,用户不需要自己的用户名或密码,这个通用的应该可以使用。


您可以对隔离存储中的数据进行加密。Here是一个教程

万一链接失效,这里是一个可以写入和读取秘密 PIN 码的应用程序的代码。

using System.IO;
using System.IO.IsolatedStorage;
using System.Text;
using System.Security.Cryptography;

private string FilePath = "pinfile";

private void BtnStore_Click(object sender, RoutedEventArgs e)
{
    // Convert the PIN to a byte[].
    byte[] PinByte = Encoding.UTF8.GetBytes(TBPin.Text);

    // Encrypt the PIN by using the Protect() method.
    byte[] ProtectedPinByte = ProtectedData.Protect(PinByte, null);

    // Store the encrypted PIN in isolated storage.
    this.WritePinToFile(ProtectedPinByte);

    TBPin.Text = "";
}

private void WritePinToFile(byte[] pinData)
{
    // Create a file in the application's isolated storage.
    IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication();
    IsolatedStorageFileStream writestream = new IsolatedStorageFileStream(FilePath, System.IO.FileMode.Create, System.IO.FileAccess.Write, file);

    // Write pinData to the file.
    Stream writer = new StreamWriter(writestream).BaseStream;
    writer.Write(pinData, 0, pinData.Length);
    writer.Close();
    writestream.Close();
}

private void BtnRetrieve_Click(object sender, RoutedEventArgs e)
{
    // Retrieve the PIN from isolated storage.
    byte[] ProtectedPinByte = this.ReadPinFromFile();

    // Decrypt the PIN by using the Unprotect method.
    byte[] PinByte = ProtectedData.Unprotect(ProtectedPinByte, null);

    // Convert the PIN from byte to string and display it in the text box.
    TBPin.Text = Encoding.UTF8.GetString(PinByte, 0, PinByte.Length);

}

private byte[] ReadPinFromFile()
{
    // Access the file in the application's isolated storage.
    IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication();
    IsolatedStorageFileStream readstream = new IsolatedStorageFileStream(FilePath, System.IO.FileMode.Open, FileAccess.Read, file);

    // Read the PIN from the file.
    Stream reader =  new StreamReader(readstream).BaseStream;
    byte[] pinArray = new byte[reader.Length];

    reader.Read(pinArray, 0, pinArray.Length);
    reader.Close();
    readstream.Close();

    return pinArray;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows Phone 8 应用程序的用户名和密码数据 的相关文章

随机推荐

  • iOS 从一年中的某一天获取日期

    stackoverflow 上的常见问题是如何从日期获取一年中的某一天 但是如何从一年中的某一天获取日期呢 我使用以下代码来生成一年中的某一天 但如何执行相反的操作 Calculate Day of the Year NSCalendar
  • 水平 ListView.builder 上的 RefreshIndicator

    我有一个水平 ListView builder 小部件 我想在将其向左拉时使用 RefreshIndicator 进行刷新 FutureBuilder future initGetTopX builder context wikiSnaps
  • removeAllObjects 和 NSMutableArray 的释放是否具有相同的功能?

    我写了以下代码行 NSMutableArray array NSMutableArray alloc init 这会分配一些内存 我的问题是 我们以后如何释放这块内存 是使用removeAllObjects方法还是 数组释放 这两种方法具有
  • 转换 T-s 时完美转发非 T 参数

    这个问题源自这个答案 我正在尝试调整一个蹦床函数 该函数当前仅传递可变数量的参数 我想让它转换任何参数PyObject pyob to Object pyob 但转发所有其他参数 So void self int PyObject floa
  • 将 WPF ContextMenu MenuItem 绑定到 UserControl 属性与 ViewModel 属性

    我正在努力了解 ContextMenu 发生了什么 我知道它被渲染为一个单独的窗口 具有一个单独的可视化树 因此我们不能使用相对绑定来绑定作为用户控件的属性公开的命令 例如下列does not work
  • Rails 4 按虚拟属性排序

    我有一个Product模型有name and description数据库中的列 我也有一个Product search results for query where query是一个像这样的字符串 Green Apple 我需要返回一个
  • Akka - 对象序列化期间的 StackOverflowError

    我遇到了一个持续超过 2 天的问题 当我在参与者之间交换消息时 正在指责 JVM 堆栈溢出 我的消息是一个具有许多链接的对象 10000 多个子对象在链接列表中链接在一起 即 具有 Neo4J 关系的对象 错误是这样的 java lang
  • JFreeChart - XYLineAndShapeRenderer getItemLineVisible() 不起作用

    我正在使用 DynamicTimeSeriesCollection 模拟虚拟实时数据 例如this 在随机间隔期间 传递到绘图的数据应该 丢失 以模拟网络连接丢失 此时 该图应该停止绘制 并且仅在丢失消退后才开始绘制数据 我子类化了XYLi
  • 数据框从数字变为字符

    我打开 csv 文件并控制每个数据的类别 mydataP lt read csv Energy protein2 csv stringsAsFactors F apply mydataP 2 function i class i 1 num
  • Struts2 - 如何获取 JSP 页面的结果作为操作类中的字符串(用于电子邮件)

    我想同时实现这两件事 我在Struts2中有一个常规的jsp页面 xx yy zz email jsp
  • 设置自定义编码器和处理参数化类型

    我有两个与数据流管道面临的编码器问题相关的问题 如何为我的自定义数据类型设置编码器 该类仅包含三个项目 两个双精度值和另一个参数化属性 我尝试使用 SerializedCoder 注释类型 但最终仍然出现错误 com google clou
  • IronPython DLR;将参数传递给编译的代码?

    我目前正在使用 DLR 执行以下操作来创建并执行简单的 python 计算 ScriptRuntime runtime Python CreateRuntime ScriptEngine engine runtime GetEngine p
  • MySQL-如何显示每个线程的最新主题

    我正在尝试创建 SQL 来检索论坛线程的最新帖子列表 我有以下代码 SELECT item discuss thread id item discuss post title COUNT item discuss thread id AS
  • 在未来的特定时间在iOS中运行后台任务

    有没有办法在 iOS 7 中连接后台任务 例如切换位置服务的使用 以在特定时间点 例如明天早上 运行 而无需用户打开应用程序 或者无需持续运行后台进程 我知道的唯一选择是在所需的时间向设备发送推送通知 但是有人知道有任何纯粹的设备上替代方案
  • 合并两个具有不同列的表mysql

    我想合并两个具有不同列的表mysql 例如 表格1 item id title slug type views updatedAt createdAt 1 sometitle someslg 1 43454 timestamp timest
  • TYPO3:未找到模板。无法解决视图的操作

    我正在尝试使用 TYPO3 后端模块 当我单击后端左侧菜单中的模块时 我试图获取视图 但是 当我单击此按钮时 我收到以下消息 抱歉 未找到请求的视图 技术原因是 没有找到模板 无法解析 MyVendor MyModule Controlle
  • 如何创建从反射获得的类型列表

    我有一个代码 如下所示 Assembly assembly Assembly LoadFrom ReflectionTest dll Type myType assembly GetType ReflectionTest TestObjec
  • 将序列中的值分配给一组连续的行,将某些行留空

    我试图对几个连续的行进行分组 并为它们分配相同的值 同时将某些行留空 当未满足某个条件时 我的数据是位置 xy 坐标 测量日期 时间以及测量之间的时间跨度 以某种方式简化 它们看起来像这样 ID X Y Time Span 1 3445 7
  • 在 C# 中列出位于 SFTP 服务器上的 ZIP 文件内的文件

    我需要通过 ASP NET Core 以编程方式处理来自 SFTP 服务器 WinSCP 的 ZIP 文件内的文件夹 有什么方法可以获取 ZIP 文件中的文件列表而无需下载到本地计算机吗 作为 文件大小会很大并且不会保持一致 任何帮助 将不
  • Windows Phone 8 应用程序的用户名和密码数据

    我正在编写一个 Windows Phone 8 应用程序 该应用程序使用 API 来提取该应用程序需要的一些数据 并且要使用该 api 需要用户名和密码 我已获得此用户名和密码 它似乎可以工作 但是我想知道在应用程序中使用此用户名和密码的正