例如,调用/包装auth.sentCode
方法(下面的链接):
https://core.telegram.org/method/auth.sendCode
我试过了:
var url = "https://149.154.167.40";
var data = "(auth.sendCode \"PHONE_CODE+NO\" 0 APP_ID \"SECRET_HASH\" \"en\")";
using (var wc = new WebClient())
{
var result = wc.UploadData(url, GetBytes(data));
}
我得到了这个异常(和内部异常)
基础连接已关闭:发生意外错误 发送。 (身份验证失败,因为远程方已关闭 传输流。)
答案 0 :(得分:2)
您开始使用this SO post
您需要先了解如何生成 AuthKey 。
Telegram-API文档编写得不是很好,但如果你继续学习它......你最终会掌握它。
通过生成AuthKey可以帮助您构建一个模式和函数,然后可以使用它来处理API的其余部分
干杯。
答案 1 :(得分:1)
如果您尝试通过Web浏览器访问https://149.154.167.40
,则可以看到未启用https协议。如果您查看here,有一个实施https的子域列表,您可以尝试其中一个来发出api请求。由于CROSS-ORIGIN策略,我不确定电报会阻止您的请求,因为响应中存在access-control-allow-origin:*
标头。如果这不起作用,您可以实现自己的握手,就像Android应用程序在here中所做的那样。我希望这能帮到你。
答案 2 :(得分:1)
使用TLSharp。要对用户进行身份验证,只需运行此代码
即可 var hash = await client.SendCodeRequest(phoneNumber);
var code = "1234"; //code that you receive from Telegram
var user = await client.MakeAuth(phoneNumber, hash, code);