使用React TypeError的Twitter登录:无法获取

时间:2019-04-19 05:25:58

标签: reactjs twitter-oauth

我正在localhost:3000上运行React项目。我正在尝试使用React登录到Twitter。

URL:  http://localhost:3000/login/

<TwitterLogin
    loginUrl="http://localhost:4000/api/v1/auth/twitter"
    onFailure={this.onFailed}
    onSuccess={this.onSuccess}
    requestTokenUrl="http://localhost:4000/api/v1/auth/twitter/reverse"
/>

当我单击Twitter登录图标时。我不断收到错误“ TypeError:无法提取”

对于控制台,出现以下错误:

OPTIONS http://localhost:4000/api/v1/auth/twitter net::ERR_CONNECTION_REFUSED

对于Twitter开发者设置的网站URL和回调URL,我也感到困惑。请帮忙。非常感谢!

3 个答案:

答案 0 :(得分:0)

Refere their doc

yaxis: [{
    min: 100,
    max: 1000,
    title: {
        text: 'Website Blog',
    },
}, {
    min: 10,
    max: 200,
    opposite: true,
    title: {
        text: 'Social Media'
    }
}]

答案 1 :(得分:0)

    public class Collection extends AppCompatActivity {

    TextView ttl;
    Button btnshw;
    DatabaseReference d2ref;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_collection);ttl = (TextView) findViewById(R.id.texirs);
        btnshw = (Button) findViewById(R.id.bshow);

        btnshw.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                d2ref = FirebaseDatabase.getInstance().getReference().child("2018-19").child("Gat No 14")
                        .child("School no 109").child("Standard 1st");
                d2ref.addValueEventListener(new ValueEventListener() {
                    @Override
                    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                        for (DataSnapshot dsnap : dataSnapshot.getChildren()) {
                            Map<String, String> map = (Map)dsnap.getValue();
                            if(map != null) {
                                String gat = dataSnapshot.child("Rupees").getValue().toString();
                                ttl.setText(gat);
                                Log.d("Tag",gat);
                            }
                        }
                    }

                    @Override
                    public void onCancelled(@NonNull DatabaseError databaseError) {

                    }
                });
            }
        });
    }
}

请勿使用localhost,因为会出现cors错误。请参阅cors文档。

答案 2 :(得分:0)

尝试其他软件包react-twitter-login

此实现未使用任何后端,而是通过Twitter的简单OAuth创建的:

import React from "react";
import TwitterLogin from "react-twitter-login";

export default props => {
  const authHandler = (err, data) => {
    console.log(err, data);
  };

  return (
    <TwitterLogin
      authCallback={authHandler}
      consumerKey={CONSUMER_KEY}
      consumerSecret={CONSUMER_SECRET}
      callbackUrl={CALLBACK_URL}
    />
  );
};