我以为我会尝试将新的签名请求逻辑添加到我的Facebook画布应用程序中,以使我自己"轻松"我在GitHub上访问facebook PHP sdk并查看单元测试.
我的实际问题是我无法获得请求中包含的哈希值,以匹配我使用应用程序机密计算的哈希值以及请求中发送的数据.
在Facebook的身份验证页面中描述了这是如何工作的.
private string VALID_SIGNED_REQUEST = "ZcZocIFknCpcTLhwsRwwH5nL6oq7OmKWJx41xRTi59E.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImV4cGlyZXMiOiIxMjczMzU5NjAwIiwib2F1dGhfdG9rZW4iOiIyNTQ3NTIwNzMxNTJ8Mi5JX2VURmtjVEtTelg1bm8zakk0cjFRX18uMzYwMC4xMjczMzU5NjAwLTE2Nzc4NDYzODV8dUk3R3dybUJVZWQ4c2VaWjA1SmJkekdGVXBrLiIsInNlc3Npb25fa2V5IjoiMi5JX2VURmtjVEtTelg1bm8zakk0cjFRX18uMzYwMC4xMjczMzU5NjAwLTE2Nzc4NDYzODUiLCJ1c2VyX2lkIjoiMTY3Nzg0NjM4NSJ9";
private string NON_TOSSED_SIGNED_REQUEST = "laEjO-az9kzgFOUldy1G7EyaP6tMQEsbFIDrB1RUamE.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiJ9";
public void SignedRequestExample()
{
var Encoding = new UTF8Encoding();
string ApplicationSecret = "904270b68a2cc3d54485323652da4d14";
string SignedRequest = VALID_SIGNED_REQUEST;
string ExpectedSignature = SignedRequest.Substring(0, SignedRequest.IndexOf('.'));
string Payload = SignedRequest.Substring(SignedRequest.IndexOf('.') + 1);
// Back & Forth with Signature
byte[] ActualSignature = FromUrlBase64String(ExpectedSignature);
string TestSignature = ToUrlBase64String(ActualSignature);
// Back & Forth With Data
byte[] ActualPayload = FromUrlBase64String(Payload);
string Json = Encoding.GetString(ActualPayload);
string TestPayload = …
Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用我的工作站上的HTTP.sys/HttpListener进行一些测试,似乎有一些限制可以防止超过1000个并发连接.有没有人有这方面的更多信息?(因为1k似乎有点清洁是巧合).
我试图找到任何线程/配置/注册表设置但是空了.
提前致谢.
GJ
看起来我跳了一下枪.
我似乎错过了使用http.sys/HttpListener BeginGetContext对并发连接不是很好,因为新的BeginGetContext只会在先前请求的响应流关闭后触发.
因此积压了1000个请求,在这种情况下,积压工作正在填补.
无论如何 - 如果有人有任何评论(或可能的更正)随时扩大.
谢谢
GJ
我试图从C#控制台应用程序使用ServerManager对IIS元数据库进行一些站点更改.
我有一个我想部署的站点,没有任何停机时间,为此我做到了:
使用新的DLL使用自己的应用程序池创建新的第二个站点
添加一个可以在本地访问的绑定,这样我就可以将第一个请求发送到第二个站点并且它"热身"
我从原始站点删除了www.domain.com的绑定,然后将其添加到第二个站点,然后调用CommitChanges()
这是故障开始的地方,绑定信息已正确更新,但IIS已停止第二个站点.有没有什么方法可以删除原始绑定并将其放在新站点上而不调用两次提交更改?
我真的想避免在这个实例中使用ARR的开销或任何其他负载平衡等,是否有办法在不停机的情况下将绑定从一个站点交换到另一个站点?真的感觉应该有.
我们有一个图像数据库,我使用David Oftedal实施的Neal Krawetz博士的方法计算了PHASH .
部分示例代码计算这些长度之间的差异在这里:
ulong hash1 = AverageHash(theImage);
ulong hash2 = AverageHash(theOtherImage);
uint BitCount(ulong theNumber)
{
uint count = 0;
for (; theNumber > 0; theNumber >>= 8) {
count += bitCounts[(theNumber & 0xFF)];
}
return count;
}
Console.WriteLine("Similarity: " + ((64 - BitCount(hash1 ^ hash2)) * 100.0) / 64.0 + "%");
Run Code Online (Sandbox Code Playgroud)
挑战是我只知道其中一个哈希,我想查询SOLR以找到相似顺序的其他哈希值.
几点说明:
编辑,一些额外的信息(道歉我陷入了问题并开始假设它是一个广为人知的领域).这是直接下载到C#console/sample app:http://01101001.net/Imghash.zip
此控制台应用程序的示例输出将是:
004143737f7f7f7f phash-test-001.jpg
0041417f7f7f7f7f phash-test-002.jpg
相似度:95.3125%
c# ×3
.net ×2
cryptography ×1
deployment ×1
facebook ×1
hash ×1
httplistener ×1
iis ×1
iis-7 ×1
phash ×1
sockets ×1
solr ×1
solrnet ×1