//+------------------------------------------------------------------+//| WebRequest.mq5 |//| Copyright 2020, MetaQuotes Software Corp. |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2020, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
string cookie=NULL,headers;
char post[],result[];
headers = "curl -X POST -u""apikey:GR1bb3zVMs9fcNKL6pA9-5zj9ptWliCu6eh9oupUnpZB";
headers = "Content-Type: application/json";
headers = "Accept: audio/wav";
headers = "data""{\"text\":\"hello world\"}";
//output hello_world.wav ^string url="https://api.eu-gb.text-to-speech.watson.cloud.ibm.com";
//--- для работы с сервером необходимо добавить URL "https://finance.yahoo.com"//--- в список разрешенных URL (Главное меню->Сервис->Настройки, вкладка "Советники")://--- обнуляем код последней ошибкиResetLastError();
//--- загрузка html-страницы с Yahoo Financeint res=WebRequest("GET",url,cookie,NULL,500,post,0,result,headers);
if(res==-1)
{
Print("Ошибка в WebRequest. Код ошибки =",GetLastError());
//--- возможно, URL отсутствует в списке, выводим сообщение о необходимости его добавленияMessageBox("Необходимо добавить адрес '"+url+"' в список разрешенных URL во вкладке 'Советники'","Ошибка",MB_ICONINFORMATION);
}
else
{
if(res==200)
{
//--- успешная загрузкаPrintFormat("Файл успешно загружен, размер %d байт.",ArraySize(result));
//PrintFormat("Заголовки сервера: %s",headers);//--- сохраняем данные в файлint filehandle=FileOpen("output hello_world.wav",FILE_WRITE|FILE_BIN);
if(filehandle!=INVALID_HANDLE)
{
//--- сохраняем содержимое массива result[] в файлFileWriteArray(filehandle,result,0,ArraySize(result));
//--- закрываем файлFileClose(filehandle);
}
elsePrint("Ошибка в FileOpen. Код ошибки =",GetLastError());
}
elsePrintFormat("Ошибка загрузки '%s', код %d",url,res);
}
}
//+------------------------------------------------------------------+
如果重写?
或像这样
是的,这是一个二进制,但不是在一个公共网络服务的背景下)
不幸的是,我没有看到这段代码的用处
谢谢你!我只是想了解一下这个人想做什么。
Shosh!:)401是ibm网络服务器返回的一个错误号码,你不应该在MQL5文档中寻找它。
完成
进入你的个人资料中的服务台链接,在那里创建一个新的应用程序。选择一个主题,如 "限制金融交易"。在那里写道,你在不知情的情况下创建了第二个账户,违反了资源的规则。并要求删除它。附上一个要删除的账户的链接。
Aryom,是否有合并账户的规定?
没有。
还有一件事,WebRequest 文档说这个函数有2个变体。第一个是用Content-Type: application/x-www-form-urlencoded,这显然不合适,因为IBM要求 "header "Content-Type: application/json"
但这是我目前所能想到的全部。
我得到了一些东西。
除了该文件没有声音
这就是它下载的内容。
我想这是与地址有关的问题,以某种方式改变它。
)))
这个想法不是对终端和宇宙的语音控制()),而是语音指导。比方说,每五分钟响起一套乐器的价格,或者可以选择设置语音提醒。终端中存在 "警报 "这样的东西,当它们被触发时,会发出短促的蜂鸣声,但它指的是什么工具,我们无法理解。
我的理解是,文章的费用应该在参与讨论的人之间分配,所有的作者都应该被列出 :-)