Comments (4)
Hi, @Yw-melo
I'm helping the Kratos team manage their backlog and am marking this issue as stale. From what I understand, the issue was related to the inability to retrieve the selector peer using selector.FromPeerContext
after a client call due to the peerKey being overwritten in the code. The suggestion was to modify the code to avoid overwriting the peerKey, which would allow for retrieving the peer after a client call. The issue has been resolved by modifying the code to avoid overwriting the peerKey, which now allows for retrieving the peer using selector.FromPeerContext
after a client call. Assistance was provided by me.
Could you please confirm if this issue is still relevant to the latest version of the Kratos repository? If it is, please let the Kratos team know by commenting on the issue. Otherwise, feel free to close the issue yourself or the issue will be automatically closed in 7 days.
Thank you!
from kratos.
Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿
After the client calls, the selector peer cannot be obtained through selector.FromPeerContext
. It is found that the following two lines cover the peerKey. In this case, the peer can only be obtained in the source code and cannot be obtained after the client calls.
kratos/transport/http/client.go
Lines 272 to 273 in 85740b1
Would it be better to go to new when there is no peerKey, so that you can get the peer through newPeer -> client call -> fromPeer
_, ok := selector.FromPeerContext(ctx)
if !ok {
var p selector.Peer
ctx = selector.NewPeerContext(ctx, &p)
}
from kratos.
🤖
你好 @Yw-melo! 😊 我是Dosu,一个可以帮助你解决问题、回答疑问,甚至成为贡献者的机器人。我在这里为你提供帮助,直到人类的维护者能够接手。我正在看你的问题,我会尽快给你一个完整的答案。一起来解决问题吧! 🚀
from kratos.
Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿
🤖
Hello @Yw-melo! 😊 I am Dosu, a bot that can help you solve problems, answer questions, and even become a contributor. I'm here to assist you until human defenders can take over. I'm looking at your question and I'll give you a complete answer as soon as possible. Let’s solve the problem together! 🚀
from kratos.
Related Issues (20)
- `stream` response in proto failed to generate http client HOT 6
- [Feature] Add kratos errors to buf remote plugin HOT 1
- [Question] I modified it based on examples/helloworld and found that client/main.go reported an error when executing. I am not sure if it is a BUG. HOT 1
- HTTPClient proto: syntax error (line 1:1): unexpected token 404 HOT 3
- [Question] how to set response content-type as xml for one method HOT 2
- [Question] HTTP Server. extra add route do not pass middleware. HOT 2
- I a new release due soon ? HOT 4
- [Question] Can I custom project layouts by using kratos to generate HOT 1
- [Question]Excuse me, what is the error when compiling? HOT 2
- Kratos middleware seems to only apply to unary gRPC operations HOT 7
- t
- [Question] About the current p2c algorithm HOT 1
- bug in Quick Start HOT 1
- [Question]how can i catch issue when i use config hot reload with a mismatch type
- 使用北极星作为服务发现时,在注册多个grpc client时,启动报错:concurrent map iteration and map write HOT 4
- [Question]how to get all router HOT 1
- GRPC MaxSendMsgSize MaxRecvMsgSize setting HOT 1
- [Question] Error: no_available_node HOT 13
- [Question] After creating a new service, the grpc test is normal, but when requesting bff through http, the bff layer does not initiate a grpc call to the business layer and returns DeadlineExceeded. Which part should be checked?
- Whitelist: selector middleware doesn't work for grpc
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kratos.