使用Twitter登录API

使用Twitter登录API,api,twitter,oauth,Api,Twitter,Oauth,我正在尝试使用从服务器获取响应,以便为潜望镜API调用获取cookie 我有请求查询所需的所有值,但我继续得到“坏请求”错误(错误代码400)。还有人能够使用LoginWitterAPI吗 请求标头: POST/api/v2/loginTwitter?bundle_id=com.bountylabs.periscope&phone_number=&session_key=xxxxxxxx&session_secret=xxxxxxxxxxxxx&user_id=xxxxxxxxx&user_na

我正在尝试使用从服务器获取响应,以便为潜望镜API调用获取cookie

我有请求查询所需的所有值,但我继续得到“坏请求”错误(错误代码400)。还有人能够使用LoginWitterAPI吗

请求标头:

POST/api/v2/loginTwitter?bundle_id=com.bountylabs.periscope&phone_number=&session_key=xxxxxxxx&session_secret=xxxxxxxxxxxxx&user_id=xxxxxxxxx&user_name=xxxxxxxxx&vendor_id=81EA8A9B-2950-40CD-9365-40535404DDE4 HTTP/1.1

授权:

OAuth OAuth_consumer_key=“xxxxxxxx”,OAuth_nonce=“CECF203CDA273C845CD512100723666”,OAuth_signature=“xxxxxxxx%3D”,OAuth_signature_method=“HMAC-SHA1”,OAuth_timestamp=“1474786616”,OAuth_token=“XXXXXXXXX”,OAuth_version=“1.0”

Oauth签名:

POST&https%3A%2F%2Fapi.periscope.tv%2Fapi%2Fv2%2LogintWitter%3Fbundle_id%3Dcom.bountylabs.periscope%26电话号码%3D%26session_密钥%xxxxxxxxxx%26用户id%3xxxxxxxxxx%26用户名称%xxxxxxxxxx%26供应商id%3D81EA8A9B-2950-40CD-9365-40535404DDE4&bundle_id%3Dcom.bountylabs.periscope%260;用户密钥%3xxx%cecf203cda273c845cd5121007232666%26oauth_签名_方法%3DHMAC-SHA1%26oauth_时间戳%3D1474786616%26oauth_令牌%XXXXXXXXXXXX%26oauth_版本%3D1.0%26电话号码%3D%26会话_密钥%XXXXXXXXXXXXXX MX%26会话_秘密%XXXXXXXXXX T%26用户id%XXXXXXXXXX 4%26用户名称%XXXXXXXXXX%26供应商id%3DEA8A9B-2950-40CD-9365-40535DDE4


多亏了别人的帮助,我解决了这个问题。问题是我在URL中传递请求参数,而没有将它们编码为json。对于任何希望解决这个问题的人,下面是我与c#达成的解决方案

结果在服务器的响应中生成一个cookie


有关此过程的更多详细信息,请参阅:

此信息过于简洁。你到底在干什么?您使用哪种语言发送这些请求的API调用?他们的文件上说你应该做什么?这不是潜望镜,不是推特吗?还有,不管是谁否决了这一点,请你添加一条评论,说明你为什么决定否决?嗨!您仍然能够使用此代码吗?我试着用
HttpClient
做同样的事情,但我总是得到“未经授权”。这是我写的帖子
            var httpWebRequest = ( HttpWebRequest )WebRequest.Create( "https://api.periscope.tv/api/v2/loginTwitter" );
            httpWebRequest.ContentType = "application/json; charset=UTF-8";
            httpWebRequest.Method = "POST";

            using( var streamWriter = new StreamWriter( httpWebRequest.GetRequestStream() ) ){
                string json = "{" + 
                    "\"bundle_id\":\"com.bountylabs.periscope\"," +
                    "\"phone_number\":\"\"," +
                    "\"session_key\":\""+final_oauth_token+"\"," +
                    "\"session_secret\":\""+final_oauth_token_secret+"\"," +
                    "\"user_id\":\""+user_id+"\"," +
                    "\"user_name\":\""+screen_name+"\"," +
                    "\"vendor_id\":\"81EA8A9B-2950-40CD-9365-40535404DDE4\"" +
                    "}";

                streamWriter.Write( json );
                streamWriter.Flush();
                streamWriter.Close();
            }

            var httpResponse = ( HttpWebResponse )httpWebRequest.GetResponse();
            using( var streamReader = new StreamReader( httpResponse.GetResponseStream() ) ){
                var result = streamReader.ReadToEnd();
                display.Text = "cookie: "+result;
            }
        }