【问题标题】:share data to LinkedIn User’s Profile for status update将数据共享到 LinkedIn 用户的个人资料以更新状态
【发布时间】:2012-06-14 10:05:24
【问题描述】:

我正在开发一个与 LinkedIn 用户个人资料共享数据的程序。我正在使用 Delphi XE2、OAuth 和 LinkedIn API。我能够访问令牌。但是我在尝试时遇到错误。 我正在为 Delphi 使用 OAuth。对于我使用的 SSL,TIdSSLIOHandlerSOcketOpenSSL 和方法 sslvSSLv3。我正在尝试发布以下内容:

我将 (https://api.linkedin.com/v1/people/~/shares) 作为 URL 和 (';hiSiranyone) 作为 Xml。

还有我的 Idhttp 自定义标头*** ('oauth_consumer_key='+xxxxxxxxxxx+ ',oauth_signature_method="HMAC-SHA1"'+',oauth_timestamp='+QuotedStr(ARequest.GenerateTimeStamp)+ ',oauth_nonce='+QuotedStr(ARequest.GenerateNonce)+',oauth_version="1.0"'+ ',oauth_token='+xxxxxxxxxx+',oauth_signature='+QuotedStr(sign));

我从 Indy Http 得到的结果是:Http/1.1 401 – Unauthorized 谁能帮我解决这个问题?请帮忙....

【问题讨论】:

    标签: delphi linkedin


    【解决方案1】:

    看看这个question和这个article

    IdSSLIOHandlerSocketOpenSSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
    with IdSSLIOHandlerSocketOpenSSL do begin 
     SSLOptions.Method := sslvSSLv3;
     SSLOptions.SSLVersions := [sslvSSLv3]; 
     SSLOptions.Mode := sslmBoth; 
     SSLOptions.VerifyMode := []; 
     SSLOptions.VerifyDepth := 0; 
     host := ''; 
    end;
    

    【讨论】:

    • @vikas Debugging LinkedIN 请指定您要发送的标头。
    • 仍然面临同样的问题,我的 http.request.customheader 是 Add('Authorization: OAuth realm="api.linkedin.com/… ',oauth_token='+'"'+Token.Key+'"'+' ,oauth_signature_method="HMAC-SHA1"'+',oauth_signature='+'"'+sign+'"'+ ',oauth_timestamp='+'"'+ARequest.GenerateTimeStamp+'"'+',oauth_nonce='+'" '+ARequest.GenerateNonce+'"'+ ',oauth_version="1.0"'); 请帮帮我A1rPun
    • @vikas 'OAuth '+ 'oauth_nonce="'+@@@@@+'",'+ 'oauth_signature_method="'+@@@@@+'",'+ 'oauth_timestamp="'+@@@@@+'",'+ 'oauth_consumer_key="'+@@@@@+'",'+ 'oauth_token="'+@@@@@+'",'+ 'oauth_signature="'+@@@@@+'",'+ 'oauth_version="'+@@@@@+'",' 确保将 @@@@@ 替换为您的变量。
    • 仍然面临同样的问题@A1rPun 请帮助我。我正在使用带有这些属性 SSLOptions.Method := sslvTLSv1; 的 ssl SSLOptions.SSLVersions := [sslvTLSv1]; SSLOptions.Mode := sslmBoth; SSLOptions.VerifyMode := []; SSLOptions.VerifyDepth := 0;主机:='api.linkedin.com';然后 Xml 发布 http.post(Url,slist,Response);我的标题是 Request.ContentType := 'application/xml';
    • 好的,我不知道你做错了什么..你能更新你的问题,让所有内容都更具可读性吗?请指定您的 indy 组件版本并添加更多代码,部分代码我/我们无法为您做太多。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-20
    • 2012-07-18
    • 2019-12-10
    相关资源
    最近更新 更多