Mosca 给出了这个错误:
TypeError: Client is not a constructor
at new KafkaAscoltatore (/home/x/Desktop/broker/node_modules/mosca/node_modules/ascoltatori/lib/kafka_ascoltatore.js:59:26)
at Object.build (/home/x/Desktop/broker/node_modules/mosca/node_modules/ascoltatori/lib/ascoltatori.js:77:12)
at /home/x/Desktop/broker/node_modules/mosca/lib/server.js:181:40
at makeCall (/home/x/Desktop/broker/node_modules/fastseries/series.js:117:7)
at ResultsHolder.release (/home/x/Desktop/broker/node_modules/fastseries/series.js:96:9)
at series (/home/x/Desktop/broker/node_modules/fastseries/series.js:39:14)
at Object.series (/home/x/Desktop/broker/node_modules/steed/steed.js:90:7)
at new Server (/home/x/Desktop/broker/node_modules/mosca/lib/server.js:171:9)
at Object.<anonymous> (/home/x/Desktop/broker/broker.js:118:14)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
at startup (internal/bootstrap/node.js:266:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:596:3)
Run Code Online (Sandbox Code Playgroud)
我打开/home/x/Desktop/broker/node_modules/mosca/node_modules/ascoltatori/lib/kafka_ascoltatore.js
并查看下面的行后发现问题与 kafka-node 版本有关:
this._opts.kafka = this._opts.kafka || require("kafka-node");
Run Code Online (Sandbox Code Playgroud)
当我删除时this._opts.kafka,它开始正常工作。然后我打印了两个我发现新版本中没有 Client …
编辑 1
这与浏览器无关。如果我没有登录,就会发生这种情况。当我登录时,它运行良好。抱歉匆忙。
我知道这很奇怪并且没有任何意义也很难解释。
正如标题所说,浏览器会导致此问题,但我不确定。
所以我有一个图像服务,它从某个地方读取一些数据并通过读取的数据创建图像。然后它会做一些事情并以 base64 格式返回图像,以便我可以在我的网站中使用这些图像。当我在我的网站上打开一个页面时,这个过程就开始了。
问题是,如果我在 Safari 上打开页面,它可以正常工作,但今天我尝试在 Chrome 上打开页面,但图像没有加载。所以我检查了图像,发现没有data数据 URI 的开头属性。
让我用一个例子来解释;
这是我在创建 HTML 模板时的代码
presets += `<div class="icon"> <img src="data:image/png;base64,${icon}"></div>`
presets += `<p class="name">${name}</p>`
presets += `<div class="image"> <img src="data:image/png;base64,${image}"/></div>`
Run Code Online (Sandbox Code Playgroud)
我正在做一些事情,然后返回这些数据,在 postman 和 safari 上我得到了这个结果:
<div class="icon"> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA{ ... }"></div>
Run Code Online (Sandbox Code Playgroud)
所以这很好。没有什么不对的。
但是当我在 Chrome 或 Opera 上打开页面时,我得到了这个;
<div class="icon"> <img src="image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA{ ... }"></div>
Run Code Online (Sandbox Code Playgroud)
看?没有data属性。我正在 Wordpress 中插入一个帖子,这是帖子的内容。为什么会这样?我希望我已经清楚地解释了我自己。
编辑 2
这是我用来插入帖子的功能
function programmatically_create_post($title, $content, $slug)
{
// Setup the author,
$author_id = 4; …Run Code Online (Sandbox Code Playgroud) 我有一个wpf应用程序,并且在相同的基本url上调用4个Web服务(书面Java),并且在我安装google chrome之前它一直运行良好。我安装了chrome,但出现了这个错误:
无法为SSL / TLS C#Web服务建立安全通道
我没有写另一个代码。那只是我安装了chrome然后删除了chrome但没有用,并且尝试了系统还原,卸载eset smart security并清理了所有Windows(8.1种单一语言)证书的情况。想办法。这是我的网络服务呼叫者
public string call(string url, string json)
{
try
{
var webrequest = (HttpWebRequest)WebRequest.Create(url);
var key = JsonConvert.SerializeObject(LoginService.SessionData.SessionKey);
UTF8Encoding uTF8Encoding = new UTF8Encoding();
byte[] requestBytes = uTF8Encoding.GetBytes(json);
WebClient client = new WebClient();
webrequest.Method = "POST";
webrequest.Headers.Add("SESSION_KEY", LoginService.SessionData.SessionKey);
webrequest.ContentType = "application/json";
webrequest.ContentLength = requestBytes.LongLength;
Stream requestStream = webrequest.GetRequestStream();//here the exception
requestStream.Write(requestBytes, 0, requestBytes.Length);
using (var response = webrequest.GetResponse())
using (var reader = new StreamReader(response.GetResponseStream()))
{
var responseBuf = reader.ReadToEnd();
String responseJson = Convert.ToString(responseBuf); …Run Code Online (Sandbox Code Playgroud) 我有一个while循环检查true/false.And我也有阻止.如果块计数到300到0.我想杀死线程时它是0和另外两个地方.我看了论坛但我的方法看起来像有点不同.btw我试过中止但没有工作.如果我的帖子中有错误请edit.thx!
void Test()
{
Thread thread = new Thread(() =>
{
try
{
int countdown = 300;
while (true)
{
Thread.Sleep(1000);
paymentService.CheckPayment(pdId);
if (result.Complete == false)
{
countdown--;
if (countdown == 1)
{
//kill thread
}
}
if (result.Complete == true)
{
//kill thread
NavigationService.Navigate(new Uri("Pages/success.xaml", UriKind.Relative));
}
}
}
catch (Exception)
{
//kill thread
Application.Current.Shutdown();
}
});
thread.Start();
}
Run Code Online (Sandbox Code Playgroud) c# ×2
node.js ×2
apache-kafka ×1
base64url ×1
image ×1
mosca ×1
ssl ×1
while-loop ×1
wordpress ×1
wpf ×1