Safari samesite none cookie added after login but we are facing the issue in post method.
While doing the post method cookie not getting into request header.And always sending the new cookie in the response header.
Safari not sending the cookie into request header with samesite none.
Kindly help me out.
Explore the integration of web technologies within your app. Discuss building web-based apps, leveraging Safari functionalities, and integrating with web services.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
There is something wrong with WKWebView. it crash. that:
- (void)viewDidLoad {
[super viewDidLoad];
[self.wkwebView evaluateJavaScript:@"navigator.userAgent" completionHandler:^(id _Nullable result, NSError * _Nullable error) {
}];
}
crash info
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------
Incident Identifier: 2430792E-CF51-4EF1-94CF-EC72AC601B2C
CrashReporter Key: 50bcb858d8f2af8c94fc75188b8a740c78e148ff
Hardware Model: iPhone11,6
Process: Youkui4Phone [956]
Path: /private/var/containers/Bundle/Application/198201AE-A0DE-4E8F-B84A-2209122A5783/Youkui4Phone.app/Youkui4Phone
Identifier: com.youku.YouKu.InHouse
Version: 11.1.13.8339 (2042174090)
Code Type: ARM-64 (Native)
Role: Foreground
Parent Process: launchd [1]
Coalition: com.youku.YouKu.InHouse [600]
Date/Time: 2024-12-17 16:11:51.5863 +0800
Launch Time: 2024-12-17 15:47:19.4488 +0800
OS Version: iPhone OS 18.1.1 (22B91)
Release Type: User
Baseband Version: 7.00.00
Report Version: 104
Exception Type: EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Termination Reason: FRONTBOARD 2343432205
<RBSTerminateContext| domain:10 code:0x8BADF00D explanation:scene-update watchdog transgression: app<com.youku.YouKu.InHouse(EEEC9FA9-AFA2-4648-B178-EFFB7C9FE91D)>:956 exhausted real (wall clock) time allowance of 10.00 seconds
ProcessVisibility: Foreground
ProcessState: Running
WatchdogEvent: scene-update
WatchdogVisibility: Foreground
WatchdogCPUStatistics: (
"Elapsed total CPU time (seconds): 13.120 (user 13.120, system 0.000), 22% CPU",
"Elapsed application CPU time (seconds): 2.732, 4% CPU"
) reportType:CrashLog maxTerminationResistance:Interactive>
Triggered by Thread: 0
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x1e503ff90 __psynch_cvwait + 8
1 libsystem_pthread.dylib 0x21d17aa50 _pthread_cond_wait + 1204
2 JavaScriptCore 0x1ab495ce8 ***::ParkingLot::parkConditionallyImpl(void const*, ***::ScopedLambda<bool ()> const&, ***::ScopedLambda<void ()> const&, ***::TimeWithDynamicClockType const&) + 1900
3 JavaScriptCore 0x1ab4852e4 ***::LockAlgorithm<unsigned char, (unsigned char)1, (unsigned char)2, ***::EmptyLockHooks<unsigned char>>::lockSlow(***::Atomic<unsigned char>&) + 216
4 JavaScriptCore 0x1ac413cc0 JSC::JSLock::lock() + 568
5 JavaScriptCore 0x1ac45d0f0 JSC::JSRunLoopTimer::Manager::timerDidFireCallback() + 808
6 JavaScriptCore 0x1ab49e218 ***::RunLoop::TimerBase::start(***::Seconds, bool)::$_0::__invoke(__CFRunLoopTimer*, void*) + 96
7 CoreFoundation 0x194cda894 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 32
8 CoreFoundation 0x194cda538 __CFRunLoopDoTimer + 1012
9 CoreFoundation 0x194cda08c __CFRunLoopDoTimers + 288
10 CoreFoundation 0x194c793b4 __CFRunLoopRun + 1856
11 CoreFoundation 0x194c78830 CFRunLoopRunSpecific + 588
12 GraphicsServices 0x1e0c581c4 GSEventRunModal + 164
13 UIKitCore 0x1977deeb0 -[UIApplication _run] + 816
14 UIKitCore 0x19788d5b4 UIApplicationMain + 340
15 Youkui4Phone 0x105160fcc main + 56
16 dyld 0x1ba666ec8 start + 2724
Topic:
Safari & Web
SubTopic:
General
We are Java application developers and we have a question regarding camera access via WebRTC on iPadOS. Specifically, on iPadOS 17.1, we are encountering an issue when trying to access the camera via the WKWebView API in the Chrome browser, where an error occurs and the camera capture fails. Our investigation suggests that device access through the navigator.mediaDevices property via the WKWebView API may not work in Chrome. However, it works as expected in the Safari browser, leading us to wonder if this is a Chrome-specific limitation, or if it's due to an iPadOS setting or specification.
At this point, we are unsure if this issue is related to the WKWebView and WebRTC specifications on iPadOS 17.1, or if there are specific limitations in Chrome. We would appreciate any insights or solutions regarding camera access in iPadOS 17.1 with WKWebView and WebRTC, especially in relation to Chrome.
I have enabled apple pay in my website.. After paying it collect my card details in popup and not showing to proceed the payment..
![]
[Image Edited by Moderator to Remove Personal Information]
Topic:
Safari & Web
SubTopic:
General
Hi. I've noticed on both iOS 17 and iPadOS 16 that when an user opens a website in a WKWebview (e.g from Gmail), then requests it to be opened in the external Safari app (through the "compass" icon), their localStorage data is not transferred to the Safari tab.
This behaviour breaks web experiences that rely on data being locally stored, e.g auth tokens or user identification data. It effectively stops users from being able to use some websites outside of an in-app context.
I am aware of Webkit's tracking prevention mechanisms such as https://webkit.org/tracking-prevention/#partitioned-third-party-localstorage, but I don't think this should apply to this case. Here the user is navigating between two Safari tabs (one internal and one external) on the same domain, exact same URL, by pressing a native Safari webview icon. There is no third-party cross-domain tracking happening.
Is this a bug or intended behaviour?
The behavior has changed when specifying an xlsx file in the src of iframe in my PWA app.
On iPadOS 17.3:Content of xlsx file shown in iframe
On iPadOS 17.5.1:A screen appears on top of the original screen to select an app to open the xlsx file.
I would like to restore the original behavior, but how can I do that?
In addition, if i open and operate the same URL as the one opened in the PWA app in Safari on iPadOS 17.5.1, "download test.xlsx dialog" is open and the dialog has view or download buttons.
If the behavior has changed to same to safari on iPadOS17.5.1, it is good for me.
Topic:
Safari & Web
SubTopic:
General
I have an iframe for google map on this site: https://www.crumpler.com/pages/new-shop
You can see the map upon clicking any location from the list. I am able to pinch and interact with the map on my iphone 14 and other mobile devices. But on older iphones on not-the-latest version of safari (iphone 13 mini and below), I am not able to interact with the map.
Have you guys met with this problem before? Why might that be the case, cause I can interact with map embeds on other sites like https://nustem.uk/about/planning-your-visit/ on older iphones too?
Topic:
Safari & Web
SubTopic:
General
The app analytics tab for my account is empty. It doesn't show any bundle IDs or apps that have been launched. Is this normal for WatchOS apps?
Here's a screenshot of the tab: https://cloud.goodsmile.studio/hT5fL2HY
As shown in the image, after the 18.1 update, the “Preview” pane in network requests disappeared. I can only view the response by right-clicking and selecting “Reveal in Sources tab”.
BEFORE:
AFTER:
PLATFORM AND VERSION
iOS
Development environment: Other: Xamarin iOS App
Run-time configuration: iOS 14.4.2 and above
DESCRIPTION OF PROBLEM
We are using WKWebView control in our application. It loads a page, wherein there is a code which gets triggered to execute a Synchronous Ajax/XmlHttpRequest. This request needs about 1 min time to complete, but it gets aborted after 10 secs.
Observed in iPhone 6S 14.4.2. Also seen the same behavior in the latest version of iPhone and iPad OS.
Need help on the below points:
How can I extend this timeout?
Making it an Asynchronous call would have regression. Hence the ask for any other alternative to extend this timeout.
STEPS TO REPRODUCE
In the WKWebView have a webpage, which gives a Synchronous ajax/XmlHttpRequest call to a Web API, which takes more than 10 seconds to complete. The Ajax call sample code is as below, which uses jquery:
var startTime = performance.now();
$.ajax({
async: false, // Synchronous ajax call
type: "POST",
url: "http://testsite:8000/api/RunTestTimer",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
timeInSeconds: 15
}), // timeInSeconds is the parameter name in the Web API, which I used to run a timer on the server-side for the value passed to the ajax call
dataType: "json",
beforeSend: skelta.forms.utilities.addRequestHeaders
})
.done(function (result) {
var endTime = performance.now();
var message = "Request Successful (Time Taken to execute: " + ((endTime - startTime) / 1000).toFixed(3) + " secs; Type: " + "POST" + "; Async: " + "FALSE" + "; Timer: " + "15" + " seconds):" + JSON.stringify(result);
console.log(message);
})
.fail(function (result) {
var endTime = performance.now();
var message = "Request Failed (Time Taken to execute: " + ((endTime - startTime) / 1000).toFixed(3) + " secs; Type: " + "POST" + "; Async: " + "FALSE" + "; Timer: " + "15" + " seconds):" + JSON.stringify(result);
console.log(message);
});
I'm experiencing a persistent issue with transparent WebM videos rendered via WKWebView in an iOS Capacitor app. The videos display a black background frame, which does not occur in the web version of the app. I've tried:
Enabling experimental WKWebView features.
Adjusting meta tags for inline video playback and hardware acceleration.
That's my code:
<Carousel
showThumbs={false}
showStatus={false}
showIndicators={true}
showArrows={false}
infiniteLoop={true}
autoPlay={true}
interval={5000} // Change slide every 5 seconds
onChange={(index) => {
if (playerRefs.current[index]) {
playerRefs.current[index]?.seekTo(0);
playerRefs.current[index]?.getInternalPlayer()?.play();
}
}}
>
{videos.map((video, index) => (
<div key={index} className="video-slide">
<ReactPlayer
ref={(player) => (playerRefs.current[index] = player)}
url={video.src}
playing={isLoaded[index]} // Play only when video is loaded
loop
muted
width="100%"
onReady={() => handleVideoReady(index)} // Set loaded state when video is ready
style={{ backgroundColor: 'transparent' }}
config={{
file: {
attributes: {
playsInline: true,
},
},
}}
/>
<p className="description">{video.description}</p>
</div>
))}
</Carousel>
It is not occur in the web version of the app (testing with xCode).
Topic:
Safari & Web
SubTopic:
General
I couldn't find any documentation related to if WebRTC is supported in macOS/macOS Catalyst, but all my tests related to that fail.
I also experience the same as in this post:
https://developer.apple.com/forums/thread/695871?login=true
Meanwhile in iOS it works well.
Hi everyone! We encountered an issue with universal links where the link failed to open the iOS application from Safari when triggered by an event listener. However, when we modified the code to open the link directly via a user click, the application launched as expected. Based on our testing, this issue seems to occur only when there is information for the application cached in Safari.
Our previous flow that resulted in the broken universal link included:
Data is loaded and a screen with a button to open the universal link is available for the user
When the data is loaded it sets a state variable to true for DataLoaded
The user clicks on the button to open the universal link
When the user clicks the button to open the link it sets a variable to true for ButtonClicked
When DataLoaded and ButtonClicked are true then the universal link is opened
Our new flow that results in the successful universal link includes:
Data is loaded and the user is hit with a loading screen until it is finished
The user clicks on the button to open the universal link and the universal link is opened directly
Does anyone have insights into why universal links must be triggered by direct user action, and in what scenarios this behavior is enforced?
iOS16 and iOS17 were fine, but on iOS18, our Safari extension that blocks content via static rulesets randomly stops working. Frequently, when a tab is left in the background for a long time (i.e. hours), the content blocker will stop working (until I either kill safari, or reload the extension). I've debugged this and the background.js script reports the ruleset as being loaded, but nevertheless, our rules aren't applied.
I really don't think that it's an issue with the way that the rules are defined, since iOS16 and iOS17 worked fine, and on iOS18, the rules DO work. They just stop working after a while.
"declarative_net_request": {
"rule_resources": [
{
"id": "ruleset_1",
"enabled": true,
"path": "ruleset_1.json"
}
]
},
Some theories:
I have other content blockers on my phone that have LOTS of rules (adguard). Could I be seeing the effects of too many rules? Can I debug this somehow? Do logs get printed somewhere when the max rule limit is reached?
Does the use of private and regular tabs mess things up?
Please, any input is appreciated, as all of our logs are normal and error-free.
Hi,
When we using Safari on MacOS with IPv6 we found that the XSRF-TOKEN can be set into the cookies. We have set-cookie in the authentication response headers 'Set-Cookie: XSRF-TOKEN=*******; SameSite=Strict; Secure'.
It works by using Safari with IPv4. And also works with Chrome/FireFox with IPv4/IPv6. And also worked with Safari 15.6.1 over IPv6.
May I know if this an issue or by design? Anyone aware of this?
Thanks.
I have a homepage with an iframe containing my app LocalStorage,
but when opening my app page the LocalStorage is lost.
structuration of the page:
homepage : domain.com
iframe and app : app.domain.com
the localstorage is set up directly within the iframe and postmessage between iframe and parent works.
We see in the parent page that the LocalStorage for the sub-domain is set but opening the sub-domain on a new window it disappears :
The problem is detected On Safari 18 only.
My website is using a lot of memory. JavaScript Allocations Timeline shows that js occupies 130MB. However, instruments show that the overall memory usage of webview reaches 480MB. I would like to know if there is any tool to analyze the distribution of this 480MB of memory usage.
Hello,
We have a Safari extension in the app store for about two years.
Our extension relies on syncing the data available in a desktop application to the extension.
For this we always used SFSafariApplication.dispatchMessage to sync the data without the extension requesting it.
And it used to work just fine.
Now it appears that dispatchMessage is being marked as unavailable to extensions, so now xcode 16 is failing to build the extension.
Also the documentation (Send messages from the app to JavaScript) still indicates that we can use dispatchMessage to initiate communication from the mac os app.
Is there a way to achieve this as it is required for our extension to function, and that's how we have built it for chrome and firefox (one codebase).
We seem to be having an issue with a webservice here which is used within our network and IOS Safari. For the service to work , we need to access it with an unencrypted HTTP API call, which acts as a trigger. The server does not respond to HTTPS requests. (the HTTP API call does not contain any data that is privacy sensitive or that can be abused)
Since recently the service does not seem to work anymore properly, but this only happens with Safari and IOS. With all other browsers the service is still working normally, only with Safarai it fails.
No matter what I do in the settings of the phone, the Safar browser seems to stop immediately after the HTTP request. What is going on here ??
The issue seems to occur only when you don't have an iCloud+ account. With an iCloud+ account I get the same issue when you switch Apple Private Relay on, but that make sense. When I have Apple Private Relay switched off, there is no issue.
Topic:
Safari & Web
SubTopic:
General
We currently are using private web security certificates for our URLs. Our users download, install, and enable a Root Certificate on their devices to reach our website (trusted). The web security certificates have expirations that are less than 13 months from expiration.
Since the deployment of iOS 18, our users are now getting a "This Connection is not Private" warning in the web browser on both Mac and iOS devices.
What change was implemented in iOS 18 that is causing this issue? Other than changing our web security certificates to Public ones, what solutions should be implemented to prevent this from occurring?